HTML (Hypertext Markup Language)超文本标记语言
W3C(World Wide Web Consortium),又称W3C理事会,是万维网的主要国际标准组织,由 蒂姆·伯纳斯-李 于1994年10月离开欧洲核子研究中心(CERN)后成立。对HTML、CSS、DOM、SVG等制定了推荐标准。
MDN Web Docs(旧称Mozilla Developer Network、Mozilla Developer Center,简称MDN)是一个汇集众多Mozilla基金会产品和网络技术开发文档的免费网站。在学习HTML过程中,可以通过浏览器搜索标签名+mdn来达到学习标签相关内容。
HTML 5 标签列表:HTML 5标签列表
空元素:一个空元素(empty element)可能是 HTML,SVG,或者 MathML 里的一个不可能存在子节点(例如内嵌的元素或者元素内的文本)的element。
在 HTML 中有以下这些空元素:
<colgroup>
when the[span](https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/colgroup#attr-span)
is present<wbr>
可替换元素:在 CSS 中,可替换元素(replaced element)的展现效果不是由 CSS 来控制的。这些元素是一种外部对象,它们外观的渲染,是独立于 CSS 的。简单说,它们的内容不受当前文档的样式的影响。CSS 可以影响可替换元素的位置,但不会影响到可替换元素自身的内容。某些可替换元素,例如<iframe>
元素,可能具有自己的样式表,但它们不会继承父文档的样式。
CSS 能对可替换元素产生的唯一影响在于,部分属性支持控制元素内容在其框中的位置或定位方式。
典型的可替换元素有:
有些元素仅在特定情况下被作为可替换元素处理,例如:
HTML 规范也说了 <input>
元素可替换,因为 "image"
类型的 <input>
元素就像<img>
一样被替换。但是其他形式的控制元素,包括其他类型的 <input>
元素,被明确地列为非可替换元素(non-replaced elements)。
常用的HTML标签:
- iframe 标签
嵌套页面,一般有frameboder属性,其值一般设置为0。frameborder="0"
。其中的name属性须与a标签配合使用。
<iframe src="https://www.baidu.com" name="xxx"></iframe>
- a 标签
跳转页面(HTTP GET 请求)
<a target="xxx" href="xxx"></a>
在name 为xxx的窗口或iframe打开新页面;
<a href="">link</a>
点击link后在当前页面刷新;
<a href="#">link</a>
点击link 后页面锚点变成#,页面滚动到顶部。
<a href="javascript:;">xxx</a>
点击xxx链接无反应。
href 里可写:
*//qq.com
*#xxx ; ?name=xxx ; ./xxx.html 。
*javascript :alet(1); 和 javascript: ;(伪协议)
属性见 MDN:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/a
- form 标签
跳转页面(HTTP POST 请求)
form内必须有个提交按钮,主要用来发起POST请求,method="post"
属性见 MDN:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/form - input / button
区别:是否为「空标签」
普通输入项:<input type="text" name="xxx" value="xxx"/>
密码输入项:<input type="password" name="yyy" value="yyy">
单选框:<input type="radio" name="" value="">
<label><input type="radio"name="sex"/>女<input type="radio"name="sex"/>男</label>
多选框:<label><input type="checkbox" name="fruit' value="orange">桔子</label>
下拉列表:<sclect name="birth">
<option value="1111">1111</option>... ...
</select>
input 的属性见:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/Input
button 的属性见:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/button - table 标签示例
用于展示数据 <thead><tbody><tfoot>
属性见:https://developer.mozilla.org/zh-CN/docs/Web/HTML/Element/table
为什么要有 javascript 伪代协议?
a.可以在用户点击 a 时执行一段 javascript 代码;
b.在地址栏输入 javascript: alert(1) 可以在当前页面执行一段代码;
c.伪协议可以实现点击之后没有任何动作的a标签,满足你的奇葩需求。
当 form 标签内有一个 input type=submit 的元素或者有一个 button 元素,button 的 type 属性为空,都可以提交。
form 标签里面的 input 加不加name属性有什么区别?
如果 input 不加 name ,在表单提交时,input 的值就不会出现在请求里。
<nav></nav>
导航条 navigation bar
用banner
可以添加一个背景图
图片无法浏览时,用alt
属性定义文本内容来替换图像
描述列表:description list :
<dl>
<dt>姓名</dt>
<dd>xxx</dd>
<dt>年龄</dt>
<dd>18</dd>
</dl>
<hr>
水平分割线
<br>
强制换行
<range>
定义滑块控件
<textarea>
制作文本区域
<em>和<strong>
都可以强调文本内容
<iframe>
用于嵌入另一页面
指定文档的页脚<footer>
全局属性 “contenteditable” 用于指定元素的内容是否可编辑
onblur和onfouc是事件属性
<canvas>
用于画图
required 用于指定必须填写的输入字段
meter 元素用于显示范围内的标量测量
aside 元素定义了页面以外的内容
header 元素用于指定文档的标题