0%

1.css和文档

本文目前是css权威指南(4th Edition)的读书笔记,后续可能会继续整理汇入自己的见解。

0.简介

CSS3采取模块化开发,不同模块处于不同Level,CSS工作组每年发布“snapshot”,整合规范文件。

  • 置换元素:用来置换元素内容的部分不由文档内容直接提供,为其他内容占位的元素。例如input,img。
  • 非置换元素:内容包含在文档中的元素。

1.css和文档

1.1外部样式表

1
<link rel="stylesheet" type="text/css" href="url" media="" title="">

1.2外部样式表的属性

1.1 media

  • media属性:值是一个或多个媒体属性描述符,指明媒体的类型和具体功能,以逗号隔开。

1.2 rel

  • 首选样式表:显示文档只会用rel是stylesheet的link标签链接的样式表。
  • 候选样式表:rel=“alternate stylesheet”,仅当用户选择使用。目前只有Gecko浏览器原生支持。

1.3 title

  • 永久样式表:不为样式表设定title属性。
  • 首选样式表有title则会出现异常,不同时使用。

1.4 @import

  • @import url() [媒体描述符]?;
    • 用在style元素内部,必须放在其他CSS规则前面;
    • 一个文档可以有多个@import语句,都会使用,而且没有候选样式表。

1.5HTTP链接

  • 为文档关联CSS,还有一种方式:使用http首部。
  • 暂时mark*

2.行内样式

  • style属性的值是一系列规则声明。

3.厂商前缀

浏览器厂商通过它标记实验性或者专属性的属性、值或者内容。

4.注释

  • / * * /会被CSS解析器忽视,并不存在。

5.媒体查询

定义浏览器在何种媒体环境使用指定的样式表:

  1. link 元素的media属性;
  2. style元素的media属性;
  3. @import 声明的媒体描述符部分;
  4. @media 声明的媒体描述符部分;@media print,screen{};
  • 媒体查询包括描述媒体类型的词组和对媒体参数的说明;
  • 一个媒体描述符包含一个媒体类型和一个或者多个媒体特性列表,特性描述符放在()中。
  • 特性描述符类似CSS中的一对属性和值,但媒体属性描述符可以不指定任何值。
  • 媒体查询可以使用逻辑关键字
    • and 都满足,方可用
    • not 除了都满足的,其他都应用。必须放到开头使用:not()and();
    • only 用于保证向后兼容,不支持媒体查询,则无效,必须放到开头。

6.特性查询

根据用户代理是否支持特定的CSS属性及值来应用一段样式,该功能称为特性查询。可以使用纯CSS实现基本的渐进增强功能。

@support(color:red),可以和媒体查询嵌套使用。
支持使用:and or not