css教程教程 css和和document
页面与css之间的联系,老手和新手都需要了解
Cascading Style Sheets: The Definitive Guide, 2nd Edition is a thorough review of all aspects of CSS2.1 and a comprehensive guide to CSS
implementation. The book includes new content on positioning, lists and generated content, table layout, user interface, paged media, and
more. It explores in detail each individual CSS property and how it interacts with other properties, and shows how to avoid common mistakes
in interpretation.
W3c的Css主页:
http://www.w3.org/Style/CSS/
1 css和和document
1..1 elements
html中的元素很容易辨识,如p,table,span,a,div。
xml中元素由dtd定义,或者xml schema定义。每个元素部分代表了其表现方式。
Css中可以看作每个元素产生一个box,该box包含了元素的内容。
1..1..1元素类型:元素类型:replaced和和nonreplaced elements,,block-level和和inline-level elements
replaced elements:元素的内容可以被不是直接由文档表示的内容替换。典型的是xhtml中的img,它可以被指向文档外部的
图片文件代替。
Input元素也可以根据其type的不同,而被radio button,checkbox,text input box代替。
Replaced elements也在显示时产生一个box。
Nonreplaced elements:html和xhtml的大多数元素是nonreplaced。就是说,这些元素的内容由用户代理(user agent,通
常是指浏览器)在元素产生的box中来表述present。(box是不是指元素对应在页面上的一个region?)。
比如<span>hi there</span>是nonreplaced,文本hi here将由user agent
来显示。
Block-level element块元素:产生一个元素box,该box填充其父元素的内容区域,并且其两边没有其他元素。就是说在默认的
情况下每个block-level都是单独一行的。比如p,div。
list items是一种特殊的块元素。为了跟其他块元素具有统一的行为,为无序的lists产生一个符号,如bullet;为有序的lists
产生一个数字。将符号或数字加到元素box上。除了符号的表现方式外,其他特性跟其余的块元素一样。
Inline-level element内联元素:产生一个元素box,其中是一行文本,并且不是单独一行的。
典型的例子是xhtml中的a元素,另外如strong,em。因为内联元素不会打断其前后的
显示,所以内联元素出现在其他元素中的话不会打断其他元素的显示。
注意:xhtml和html中块元素不能从内联元素继承,但是css中没有类似规定。没有限制元素嵌套方式。
块元素块元素(block element)一般是其他元素的容器元素,块元素一般都从新行开始,它可以容纳内联元素和其他块元素一般是其他元素的容器元素,块元素一般都从新行开始,它可以容纳内联元素和其他块元素,常见块元常见块元
素是段落标签素是段落标签'P。。"form"这个块元素比较特殊,它只能用来容纳其他块元素。这个块元素比较特殊,它只能用来容纳其他块元素。
如果没有 如果没有css的作用,块元素会顺序以每次另起一行的方式一直往下排。而有了的作用,块元素会顺序以每次另起一行的方式一直往下排。而有了css以后,我们可以改变这种以后,我们可以改变这种html的默认的默认
布局模式,把块元素摆放到你想布局模式,把块元素摆放到你想 要的位置上去。而不是每次都愚蠢的另起一行。需要指出的是,要的位置上去。而不是每次都愚蠢的另起一行。需要指出的是,table标签也是块元素的一标签也是块元素的一
种,种,table based layout和和css based layout从一般使用者(不包括视力障碍者、盲人等)的角度来看这两种布局,除了页面从一般使用者(不包括视力障碍者、盲人等)的角度来看这两种布局,除了页面
载入速度的差别外,没有其他的差别。但是如果普通使用者不经意点了载入速度的差别外,没有其他的差别。但是如果普通使用者不经意点了 查看页面源代码按钮后,两者所表现出来的差异就非查看页面源代码按钮后,两者所表现出来的差异就非
常大了。基于良好重构理念设计的常大了。基于良好重构理念设计的css布局页面源码,至少也能让没有布局页面源码,至少也能让没有web开发经验的普通使用者把内容快开发经验的普通使用者把内容快 速的读懂。从这个速的读懂。从这个
角度来说,角度来说,css layout code应该有更好的美学体验吧。应该有更好的美学体验吧。
你能够把块容器元素 你能够把块容器元素div想象成一个个想象成一个个box,, 或者如果你玩过剪贴文载的话,那就更加容易理解了。我们先把需要的文章或者如果你玩过剪贴文载的话,那就更加容易理解了。我们先把需要的文章
从各种报纸、杂志总剪从各种报纸、杂志总剪 下来。每块剪下来的内容就是一个下来。每块剪下来的内容就是一个block。然后我们把这些纸块按照自己的排版意图,用胶水重新贴到。然后我们把这些纸块按照自己的排版意图,用胶水重新贴到