CSS 笔记(w3school.com.cn)

  1. 创建CSS样式表
  2. CSS选择器

创建CSS样式表

外部样式表:

<head><link type="text/css" href="mystyle.css" rel="stylesheet" /></head>

内部样式表:

<head><style type="text/css">p{ color:black; }</style></head>

内联样式:

<p style="color: black; font-style: italic;">words.</p>


 

CSS 选择器

元素选择器

html { font-family: sans-serif; }

选择器分组

h1, h2, p { font-size: 16px; }

通配符选择器

* { margin: 0; }

类选择器

<head><style type="text/css">

  .myclass{ font-weight: bold; }

  p.myclass { text-align; }  /* 选择myclass类中的p元素 */

</style></head>

<body>

  <div class="myclass">mydiv.</div>

  <p class="myclass">myparagraph</p>

</body>

多类选择器

<head><style type="text/css">

  .bigFont { font-size: 2em; }

  .redFont { color: red; }

  .redFont.bigFont { text-decoration: line-through underline; } /* 多个类选择器连在一起,将选择同时包含这些类的元素(类名的顺序随意) */

</style></head>

<body>

  <p class="bigFont">abc</p>

  <p class="redFont">abc</p>

  <p class="bigFont redFont">abc</p>

</body>

id 选择器

#myID { background-color: yellow; }

属性选择器

 简单属性选择

 *[title] { color: red; } /* 把含有标题(title)的所有元素变红 */

 a[href] { color: red;} /* 只针对拥有href的a元素 */

 a[href][title] { color: red; } /* 选择同时拥有href和title属性的元素 */

根据具体属性值选择

 a[href="http://www.w3school.com.cn/about_us.asp"] {color: red;}

 a[href="http://www.w3school.com.cn/"][title="W3School"] {color: red;}

 p[class="important warning"] {color: red;} /* 匹配<p class="important warning">This paragraph is a very important warning.</p>  */

 p[class~="important"] {color: red;} /* 选择 class 属性中包含 important 的元素,如果忽略了波浪号,则说明需要完成完全值匹配。 */

 img[title~="Figure"] {border: 1px solid gray;} /* 这个规则会选择 title 文本包含 "Figure" 的所有图像 */

 p.important 和 p[class="important"] 应用到 HTML 文档时是等价的

子串匹配属性选择器

类型描述
[abc^="def"] 选择 abc 属性值以 "def" 开头的所有元素
[abc$="def"] 选择 abc 属性值以 "def" 结尾的所有元素
[abc*="def"] 选择 abc 属性值中包含子串 "def" 的所有元素

 可以想到,这些选择有很多用途。

 举例来说,如果希望对指向 W3School 的所有链接应用样式,不必为所有这些链接指定 class,再根据这个类编写样式,而只需编写以下规则:

 a[href*="w3school.com.cn"] {color: red;}

特定属性选择类型

 *[lang|="en"] {color: red;}

上面这个规则会选择 lang 属性等于 en 或以 en- 开头的所有元素。因此,以下示例标记中的前三个元素将被选中,而不会选择后两个元素:

<p lang="en">Hello!</p>
<p lang="en-us">Greetings!</p>
<p lang="en-au">G'day!</p>
<p lang="fr">Bonjour!</p>
<p lang="cy-en">Jrooana!</p>

 一般来说,[att|="val"] 可以用于任何属性及其值。

 img[src|="figure"] {border: 1px solid gray;} /* 假设一个 HTML 文档中有一系列图片,其中每个图片的文件名都形如 figure-1.jpgfigure-2.jpg。就可以这样使用选择器匹配所有这些图像: */

后代选择器

 h1 em {color:red;} /* 作为 h1 元素后代的任何 em 元素 */

子元素选择器

 h1 > strong {color:red;} /* 子结合符两边可以有空白符,这是可选的。*/

相邻兄弟选择器

 可选择紧接在另一元素后的元素,且二者有相同父元素

 h1 + p {margin-top:50px;} /* 选择紧接在 h1 元素后出现的段落,h1 和 p 元素拥有共同的父元素 */

CSS 伪类

 锚伪类

 a:link {color: #FF0000}        /* 未访问的链接 */
 a:visited {color: #00FF00}    /* 已访问的链接 */
 a:focus {color: #00FF00}  /* 获得焦点的链接 */
 a:hover {color: #FF00FF}    /* 鼠标移动到链接上 */
 a:active {color: #0000FF}    /* 选定的链接 */

 提示:在 CSS 定义中,a:hover 必须被置于 a:link 和 a:visited 之后,才是有效的。

 提示:在 CSS 定义中,a:active 必须被置于 a:hover 之后,才是有效的。

 提示:伪类名称对大小写不敏感。

 a.red : visited {color: #FF0000} /* 伪类可以与 CSS 类配合使用 */

 - :first-child 伪类

 这个特定伪类很容易遭到误解

 p:first-child {font-weight: bold;} /* 将作为某元素第一个子元素的所有 p 元素设置为粗体 */

 - :lang 伪类

 <head><style type="text/css">
 q:lang(no)
    {
    quotes: "~" "~"
    }
 </style></head>
 <body>
 <p>文字<q lang="no">段落中的引用的文字</q>文字</p></body> /* :lang 类为属性值为 no 的 q 元素定义引号的类型: */

CSS 伪元素

 :first-line 伪元素

 p:first-line { color: #ff0000;  font-variant: small-caps; } /* "first-line" 伪元素用于向文本的首行设置特殊样式。 */

 "first-line" 伪元素只能用于块级元素。

 这些属性可应用于 "first-line" 伪元素:font color background word-spacing text-decoration vertical-align text-transform line-height clear

:first-letter 伪元素

 p:first-letter { color:#ff0000; font-size:xx-large; } /* "first-letter" 伪元素用于向文本的首字母设置特殊样式. */

 这些属性可应用于 "first-letter" 伪元素:font color background margin padding border text-decoration vertical-align (仅当 float 为 none 时) text-transform line-height float clear

:before 伪元素

 h1:before { content:url(logo.gif); } /* ":before" 伪元素可以在元素的内容前面插入新内容。 */

 :after 伪元素

 h1:after { content:url(logo.gif); }  /* ":after" 伪元素可以在元素的内容之后插入新内容。 */


 

 

 

 

posted @ 2015-04-29 10:00  蚂蚁草  阅读(274)  评论(0)    收藏  举报