从头开始看一遍css,遇到之前许多应该掌握但是并未掌握的知识,记录下来。
CSS权威指南4...
一、
display属性,除了最常用的块级元素block,行内元素inside,还有以下几种属性
display-listitem: 将这个元素的外部显示类型变为 block 盒,并将内部显示类型变为多个 list-item inline 盒。
display-outside: 这些关键字指定了元素的外部显示类型,实际上就是其在流式布局中的角色。
display-internal: 像 table
和 ruby
这样的布局模型有着复杂的内部结构,因此它们的孩子和后面的元素可能具有多个角色。这一类关键字就是用来定义这些“内部”显示类型,并且只有在这些特定的布局模型中才有意义。
display-box: 这些值定义元素是否完全生成显示盒。
display-legacy: CSS2 对于 display
属性使用单关键字语法, 对于相同布局模式的 block 级和 inline 级变体需要使用单独的关键字
二、
引入外部样式表,之前一直用link标签引入,除此之外还可以用@import声明加载外部样式。
eg: @import url(xxx.css) all;
@import url(xxx.css) screen;
@import url(xxx.css) projection, print;
导入何种媒体,在URL后面提供媒体描述符
@import指令在style元素内部,而且不许放在其他css规则前面,否则不会起作用
并且可以在外部样式表中使用!
我们知道link标签余下的内容,即那些属性和值比较容易理解。
rel是"relation",(关系)的简称,这里指定的关系是stylesheet。
type属性的值始终未text/css。
href,它的值是样式表的URL,可以是绝对地址,也可以是相对地址.
接下来两个是我以前并未注意过的属性:media以及title
media:它的值是一个或多个多媒体描述符(media descriptor),指明媒体的类型和具有的功能。多个媒体描述符以逗号分开。
eg: <link rel="stylesheet" type="text/css" href="style.css" media="screen, projection">
此外还有候选样式表(alternate stylesheet),仅当用户自己选择,文档才会使用候选样式表渲染
此项需要浏览器支持候选样式,如Firefox等
规则的结构:一个规则由两个基本部分构成:选择符和声明块