zoukankan      html  css  js  c++  java
  • 第一篇:前端基础之HTML内容

    前端介绍

    什么是前端?

      凡是与用户进行交互的操作界面都称为前端

      比如:手机界面,电视屏幕,电脑显示屏等

    web服务的本质

      在浏览器上输入一个网址后回车进行的操作

      1.朝着指定服务器发送请求

      2.服务端接收相应的请求

      3.服务端返回相应的响应

      4.浏览器接收响应 按照特点的规则渲染页面展示给用户看

    import socket
    server = socket.socket
    server.bind(('127.0.0.1',9527))
    server.listen(5)
    
    while True:
    	conn,addr = server.accept()
    	data = conn.recv(1024)
    	conn.send(b'HTTP/1.1 200OK 
    
    ')
    	conn.send(b'HELLO WORLD')
    	conn.close()
    

      

    HTTP协议

    超文本传输协议

    规定了浏览器与服务端之间数据传输的格式

    四大特性

    • 1.基于请求响应

      • 一次请求对应一次响应

    • 2.基于TCP/IP作用于应用层之上的协议(还有ftp协议)

    • 3.无状态

      • 不保留客户端的状态(不管请求几次,待如初见)

      • 所以就需要 cookie(储存在用户本地终端上的数据) session token

    • 4.无连接

      • 长链接 websocket(类似于http协议的大补丁)

    数据格式

      请求格式

        1.请求首行(请求方式 协议版本)

        2.请求头(一大堆的k,v键值对)

        3.请求体(携带的数据)

      响应格式

        1.响应行首(响应状态码)

        2.响应头(一大堆的K,V键值对)

        3.响应体(浏览器展示给用户看的数据)

     

      响应状态码

        用数据来表示一大堆提示信息

        1XX:服务端成功接收到客户端的数据正在处理 你可以继续提交

        2XX:200请求成功 服务端已经返回了你想要的数据

        3XX:重定向(原本想访问A但是内部自动给你转到了B上面)

        4XX:404请求资源不存在,403你当前不具备请求该资源的条件

        5XX:500服务端内部错误 机房着火 雨你无瓜

        公司内部可以定制自己响应状态码

     

      请求方式

        1.get请求

        朝服务端要资源(获取数据)

        类似于浏览器窗口输入www.baidu.com获取百度首页

        2.post请求

        朝服务端提交数据(提交数据)

        类似于登录注册功能

     

      HTML是什么?

    • 超文本标记语言(Hypertext Markup Language, HTML)是一种用于创建网页的标记语言。

    • 本质上是浏览器可识别的规则,我们按照规则写网页,浏览器根据规则渲染我们的网页。对于不同的浏览器,同个标签可能有不同的解释(浏览器的兼容性问题)

    • 网页文件的扩展名:.html或.htm

     

      HTML注释
    单行注释:<!--注释内容-->
    多行注释:<!--
    		注释内容1
    		注释内容2
    		-->  

    注释是代码之母。

    <!DOCTYPE标签>

    <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前。

    声明不是 HTML 标签;它是指示 web 浏览器关于页面使用哪个 HTML 版本进行编写的指令。

    HTML文档结构

    最基本的HTML文档:

    <!DOCTYPE html>
    <html lang="zh-CN">
    <head>    #head内放的内容不是给用户看的 是给浏览器去识别做相应操作的
      <meta charset="UTF-8">
      <title>css样式优先级</title>
    </head>
    <body>    #body内放的内容就是浏览器展示给用户看到的花里胡哨的页面
    
    </body>
    </html>

    1.<!DOCTYPE html>声明为HTML5文档

    2.<html></html>是文档的开始标记和结束的标记。是HTML页面的根元素,在它们之间是文档的头部(head)和主体(body)。

    3.<head>、</head>定义了HTML文档的开头部分。它们之间的内容不会在浏览器的文档窗口显示。包含了文档的元(meta)数据。

    4.<title></title>定义了网页标题,在浏览器标题栏显示

    5.<body></body>之间的文本是可见的网页主体内容。

    *注意:对于中文网页需要使用 声明编码,否则会出现乱码。有些浏览器会设置 GBK 为默认编码,则你需要设置为 。*

    HTML打开方式

    1.pycharm自动调用浏览器打开

    2.手动查找路径之后选择浏览器打开

     

    HTML标签格式

    • HTML标签是由尖括号包围的关键字,如<html>, <div>

    • HTML标签通常是成对出现的,比如:<div></div>,第一个标签是开始,第二个标签是结束。结束标签会有斜线。

    • 也有一部分标签是单独呈现的,比如: <hr/>等。

    • 标签里面可以有若干属性,也可以不带属性。

    标签的语法:

    • <标签名 属性1=“属性值1” 属性2=“属性值2”……>内容部分</标签名>

    • <标签名 属性1=“属性值1” 属性2=“属性值2”…… />

    几个很重要的属性

    • id:定义标签的唯一ID,HTML文档树中唯一

    • class:为html元素定义一个或多个类名(classname)(CSS样式类名)

    • style:规定元素的行内样式(CSS样式)

    head内常用标签

    标签意义
    <title></title> 定义网页标题
    <style></style> 定义内部样式表,内部支持直接写CSS代码
    <script></script> 定义JS代码或引入外部JS文件
    <link/> 引入外部样式表文件或网站图标
    <meta/> 定义网页原信息 name属性keywords,description
     
     
    什么是URL

    URL:统一资源定位符

    body内常用标签

    标签的分类:双标签、自闭合标签

    基本标签
    <b>加粗</b>
    <i>斜体</i>
    <u>下划线</u>
    <s>删除</s>
    
    <p>段落标签</p>  #独占一行
    
    <h1>标题1</h1>
    <h2>标题2</h2>
    <h3>标题3</h3>
    <h4>标题4</h4>
    <h5>标题5</h5>
    <h6>标题6</h6>
    
    <!--换行-->
    <br>
    
    <!--水平线--><hr>
    特殊符号

    div标签和span标签

    div标签用来定义一个块级元素,并无实际的意义。主要通过CSS样式为其赋予不同的表现。 span标签用来定义内联(行内)元素,并无实际的意义。主要通过CSS样式为其赋予不同的表现。

     

    本身没有特殊意义

    块级元素与行内元素的区别: 所谓块元素,是以另起一行开始渲染的元素,行内元素则不需另起一行。如果单独在网页中插入这两个元素,不会对页面产生任何的影响。 这两个元素是专门为定义CSS样式而生的。

    注意:

    关于标签嵌套:通常块级元素可以包含内联元素或某些块级元素,但内联元素不能包含块级元素,它只能包含其它内联元素。

    p标签不能包含块级标签,p标签也不能包含p标签。

     

     

    img图片标签

    src:

    1.可以写一个网站图片地址

    2.还可以写本地的图片地址

    3.url(自动朝该url发送get请求要数据)

    alt:

    当图片加载不出来的时候 默认展示的提示信息

    title

    当鼠标悬浮在图片上的时候 展示的提示信息

    width,height

    修改一个 另一个会自动等比例缩放

    如果两个都修改图片会失真

    <img src="图片的路径" alt="图片未加载成功时的提示" title="鼠标悬浮时提示信息" width="宽" height="高(宽高两个属性只用一个会自动等比缩放)">
    

      

    a链接标签

    herf:

    放一个url

    点击就会跳转到该url所对应的资源

    三种地址类型:

    • 绝对URL - 指向另一个站点(比如 href="http://www.jd.com

    • 相对URL - 指当前站点中确切的路径(href="index.htm")

    • 锚URL - 指向页面中的锚(href="#top")

     

    target:

    控制是否有在当前页跳转

    默认是在当前页跳转

    _self

    新建页面跳转

    _blank

    锚点功能

    href不单单可以写url 也可以写另外一个a标签id值

    点击就会跳转到id值所对应的a标签所在的位置

     

    列表标签

    1.无序列表

    <ul type="disc">
      <li>第一项</li>
      <li>第二项</li>
    </ul>

    type属性:

    • disc(实心圆点,默认值)

    • circle(空心圆圈)

    • square(实心方块)

    • none(无样式)

    2.有序列表

    <ol type="1" start="2">
      <li>第一项</li>
      <li>第二项</li>
    </ol>
    

      

    type属性:

    • 1 数字列表,默认值

    • A 大写字母

    • a 小写字母

    • Ⅰ大写罗马

    • ⅰ小写罗马

    3.标题列表

    <dl>
      <dt>标题1</dt>
      <dd>内容1</dd>
      <dt>标题2</dt>
      <dd>内容1</dd>
      <dd>内容2</dd>
    </dl>

    表格标签

    展示网站数据时,一般情况下可以使用表格标签

                  <table>
    				<thead>
    					<tr>
    						<th></th>
    					</tr>
    				</thead>
    				<tbody>
    					<tr>
    						<td></td>
    					</tr>
    				</tbody>
    			</table>  

    属性:

    • border: 表格边框.

    • cellpadding: 内边距

    • cellspacing: 外边距.

    • 像素 百分比.(最好通过css来设置长宽)

    • rowspan: 单元格竖跨多少行

    • colspan: 单元格横跨多少列(即合并单元格)

    注意:先表格标签 先写结构 然后写数据

    一个tr就是一行

    th和td的区别 一个加粗一个不加粗

    通常情况下表头用th,表单内容用td

    表单标签

    form标签

    功能:

    表单用于向服务器传输数据,从而实现用户与Web服务器的交互

    表单能够包含input系列标签,比如文本字段、复选框、单选框、提交按钮等等。

    表单还可以包含textarea、select、fieldset和 label标签。

    action参数

    用来控制数据提交的路径(到底朝哪个后端服务器提交数据) 三种写法: 1.不写 默认就是朝当前该页面所在的地址提交数据 2.全路径(https://www.baidu.com) 3.只写路径后缀(/index/)

    表单属性

    input

    <input>元素根据不同的type属性,变化为多种形态。

     

    属性说明:

    • name:表单提交时的“键”,注意和id的区别

    • value:表单提交时对应项的值

      • type="button", "reset", "submit"时,为按钮上显示的文本年内容

      • type="text","password","hidden"时,为输入框的初始值

      • type="checkbox", "radio", "file",为输入相关联的值

    • checked:radio和checkbox默认被选中的项

    • readonly:text和password设置只读

    • disabled:所有input均适用

    select标签

    一个个选项就是一个个option标签
    				默认是单选的
    				可以加一个multiple该成多选
    					<select name="" id="" multiple>
    						<option value="">新垣结衣</option>
    						<option value="">明老师</option>
    						<option value="">嫖老师</option>
    						<option value="">波老师</option>
    					</select>
    				如何让option标签默认选中
    					加selected="selected"  
    					<select name="" id="" multiple>
    						<option value="" selected="selected">新垣结衣</option>
    						<option value="">明老师</option>
    						<option value="" selected>嫖老师</option>
    						<option value="">波老师</option>
    					</select>				

    属性说明:

    • multiple:布尔属性,设置后为多选,否则默认单选

    • disabled:禁用

    • selected:默认选中该项

    • value:定义提交时的选项值

    label标签

    label通常是配合input一起使用的

    for用来填写对应的input标签id值

    定义:<label> 标签为 input 元素定义标注(标记)。 说明:

    1. label 元素不会向用户呈现任何特殊效果。

    2. <label> 标签的 for 属性值应当与相关元素的 id 属性值相同。

    <form action="">
      <label for="username">用户名</label>
      <input type="text" id="username" name="username">
    </form>

    textarea多行文本

    <textarea name="memo" id="memo" cols="30" rows="10">
      默认内容
    </textarea>

    属性说明:

    • name:名称

    • rows:行数

    • cols:列数

    • disabled:禁用

    标签应该具备的属性

    1.id属性:类似于身份证号 用来唯一标识当前html页面中的某一个标签 在同一个html页面中 id值不能重复

    2.class属性:类似于面向对象的继承 直接引用别的类的样式

    能够触发form表单提交数据的按钮

    <input type="submit">   
    可以通过value属性来指定按钮文本内容
    <input type="submit" value="注册"><button>点我</button> 

    input获取到的用户输入就类似于是字典的value

    input中的name属性就类似于是字典的key

    标签的分类2

    1.块儿级标签 独占一行 h1~h6 p br hr div

      1.块儿级标签内部可以嵌套任意的块儿级标签和行内标签 2.特列:p虽然是块儿级标签 但是它的内部只能嵌套行内标签 不能嵌套块儿级标签 如果嵌套了 没有问题 知识不符合html语法规范

      2.行内标签 u s i b span

        自身文本多大 就占多大

        行内标签内部不能嵌套块儿级标签和行内标签



     

  • 相关阅读:
    基于PI的Webservice发布实例
    SM30 表格维护生成器
    各种财务凭证的冲销
    SAP后台作业记录操作
    特性,批次特性建立的BAPI函數
    Windows 上 Nginx 路径的陷阱
    BitKeeper 和 Git
    Javascript 正则验证带 + 号的邮箱地址
    FastAdmin 开发第三天:认识目录
    PHP 中的对象传递
  • 原文地址:https://www.cnblogs.com/lvguchujiu/p/12098360.html
Copyright © 2011-2022 走看看