谣言1:属性一定要用引号包起来,比如 <div id="test">
正解:HTML 文档写得很清楚,属性有四种写法(突然有茴香豆既视感 /(ㄒoㄒ)/\~\~)
1 <input disabled> 2 <input value=yes> 3 <input type='checkbox'> 4 <input name="be evil">
有人一定会说加引号「最安全」,骗新人说「引号必须写」很省事啊。
我对此嗤之以鼻。
谣言2:自闭合标签一定要以 /> 结尾,比如 <input /> <img />
正解:其实在 HTML 5 里 <input> 才是正确写法,详见 HTML 5 规范文档里的三处
Void elements only have a start tag;
Then, if the element is one of the void elements, or if the element is a foreign element, then there may be a single "/" (U+002F) character. This character has no effect on void elements, but on foreign elements it marks the start tag as self-closing.
Void elements: area, base, br, col, embed, hr, img, input, keygen, link, meta, param, source, track, wbr
很容易推理出:对于 void elements,<meta /> 完全可以写成 <meta>,而且是推荐写法。
谣言3:所有标签必须闭合,比如 <p></p>
正解:请看 HTML 5 规范文档
A p element's end tag may be omitted if the p element is immediately followed by ...
所以以下写法完全符合要求
<p> 你好, <p> 我是方方
谣言4:HTML 5 文档里必须写 <html> <head> 和 <body> 标签
正解:在没有注释的前提下,这三个标签都是可不写的。具体看规范文档。
下面这段 HTML 是合法的 HTML 5
<!DOCTYPE html> <title>这是一个合法的 HTML 5 文档</title> <meta charset="UTF-8"> <p>这是一个合法的 HTML 5 文档
总结
以上。
本文不接受评论,因为本文在说 HTML 语法,他们在跟我扯团队规范,懒得跟你扯。
你们这些人要搞清楚,本文在说,「可以不写」引号,没说「必须不写」引号。
你把道理讲清楚,新人会选择他认为对的。
而不是无脑说:属性一定要用引号包起来。
饥人谷一直致力于培养有灵魂的编程者,打造专业有爱的国内前端技术圈子。如造梦师一般帮助近千名不甘寂寞的追梦人把编程梦变为现实,他们以饥人谷为起点,足迹遍布包括facebook、阿里巴巴、百度、网易、京东、今日头条、大众美团、饿了么、ofo在内的国内外大小企业。 了解培训课程:加微信 xiedaimala03,官网:https://jirengu.com
本文作者:饥人谷方应杭老师