CSS设计指南之一 HTML标记与文档结构

时间:2023-03-09 01:39:41
CSS设计指南之一 HTML标记与文档结构

HTML标记与文档结构

之所以从HTML讲起,是因为CSS的用途就是为HTML标记添加样式。

1.1 HTML标记基础

对于每个包含内容的元素,根据它所包含的内容是不是文本,有两种不同的方式给它们加标记,一种是使用闭合标签,另一种是使用自闭合标签。

1.1.1 文本用闭合标签

<标签名 属性1="属性值">文本内容</标签名>

标题、段落等文本元素都要求闭合标签,也就是要有一个开标签和一个闭标签。

比如:<p>Words by Paul</p>

1.1.2 引用内容用自闭合标签

<标签名 属性1="属性值" />

非文本内容是通过自闭合标签显示的。闭合标签与自闭合标签的区别在于,闭合标签包含的是会显示的实际内容,而自闭合标签只是给浏览器提供一个对要显示内容的引用。浏览器会在HTML页面加载的时候,额外向服务器发送请求,以取得自闭合标签引用的内容。

比如:<img src="data:images/cisco.jpg" alt="Cisco icon" />

1.1.3 属性

属性负责为浏览器提供有关标签的额外信息,每个HTML标签都可以添加属性,class和id等属性几乎可以适用于任何标签,而有些属性则适用于特定的标签类型,比如src属性只适用于类似<img>这样的标签。

1.1.4 复合元素

所谓复合元素即它们是由多个标签共同组成的。比如<li>是一个列表项,它只在<ol>(ordered list,有序列表)和<ul>(unordered list,无序列表)这两种列表标签中才有效。

<ol>
<li>step </li>
<li>step </li>
<li>step </li>
</ol>

1.2 HTML文档剖析

1.2.1 块级元素和行内元素

几乎所有HTML元素的display属性值要么是block,要么为inline.最明显的一个例外是table元素,它有自己特殊的display属性值。

块级元素(比如标题和段落)会相互堆叠在一起沿页面向下排列,每个元素分别占一行。而行内元素(比如链接和图片)则会相互并列,只有在空间不足以并列的情况下才会折到下一行显示。无论你想了解哪个HTML元素,第一个要问的问题都应该是:它是块级元素还是行内元素?

<p>、<div>默认为块级元素,但可显示修改其display属性,转换为行内元素。

<head runat="server">
<title>Handsome paul</title>
<meta charset="utf-8" /> <style>
p {
display: inline;
} div {
display: inline;
} </style> </head>
<body>
<form id="form1" runat="server">
<p>This is a p element</p> <div>This is a div element</div>
</form>
</body>

1.3 文档对象模型DOM

DOM是从浏览器的视角来观察页面中的元素以及每个元素的属性。,由此得出这些元素的一个家族树。通过DOM,可以确定元素之间的相互关系。在CSS中引用DOM中特定的位置,就可以选中相应的HTML元素,并修改其样式属性。