1. html元素、标签和属性之间的关联与区别?
html文档中,标签的样式是这样的:<p>,而一个元素的样式是这样的:
<p>这是一段话</p>,它是由开始标签 + 内容 + 结束标签组成的,所以说一个元素是由标签包裹着内容组成的(单标签除外),某些元素的内容可以为空。
单标签:例如<br/>,它本身就是开始标签,又是结束标签,但没有包含任何内容。单标签的内容来自外部。
属性是为html元素提供各种附加信息的就是属性,它总以“属性名=属性值”这种名值对的形式出现,而且属性总是在HTML元素的开始标签中进行定义。
关联:html中,标签与被其包裹的内容组成元素,属性则是用来为元素提供附加信息的东西。
区别:元素包含标签,但是并不是所有的标签都能组成元素,属性则是元素的附加信息。
2. 为什么说html是结构化的文档?
因为参考W3C标准,HTML的形成,以及它所形成的树目录结构,都反映一个实质,HTML是一种具有语义的,具有结构层次的标记语言,其标签告诉了浏览器该如何解释处于一对标签间的部分该如何呈现,是什么意思。
我们所看到的大多数网页,都是通过其具有结构化的标签组合所成,一层一层的嵌套,而形成一个庞大的树目录结构,层次分明,目录清晰!因为它的结构形成,大概可理解为结构化文档。
3. 表单控件中的name属性为什么非常重要?
对于一个需要提交信息的表单来说,name属性尤为的重要,因为一旦没有了name属性,那么这个表单的信息就无法提交。
4. 为什么现在都不使用表格进行页面布局?
table必须在页面完全加载后才显示,没有加载完毕前,table为一片空白,也就是说,需要页面完毕才显示,而div是逐行显示,不需要页面完全加载完毕,就可以一边加载一边显示。
对用户的体验度更好,很多时候如果页面过大,而table又位于页面的第一屏,就需要考虑用div来模拟table了,总之,如果非要用table,一定不能让table出现在前两屏的范围,要让table神不知鬼不觉的加载,不能放到让用户一眼就能看到的地方,那样用户只会看到一片空白。
当然碰见数据量大的表格数据,还是要用table方便一些。
5. 一个元素最终呈现的样式,由几方面的因素决定?
一个元素的最终呈现样式由四个方面的因素决定:
- 继承样式: 根据元素在文档中的结构和层级关系来确定它的最终样式;
- 浏览器样式: 用户代理样式。代理发出用户的网络请求,用户是通过浏览器发出http请求的,所以,一般默认情况下,浏览器就是用户代理,大多数的浏览器表现基本一致。
- 自定义样式: 写到HTML文档的 style 标签中。
- 行内样式(内联样式): 写到行内元素的style属性中。
它们的优先级由低到高。