当前位置: 移动技术网 > IT编程>网页制作>CSS > css选择器

css选择器

2018年02月08日  | 移动技术网IT编程  | 我要评论

反恐精英为什么进不去,兴宁市沐彬中学,洛克王国维苏威地心

(一)元素选择器

如果设置html的样式,选择器通常是某个html元素,如:p,h1,a,甚至是html本身
html {color:black;}
h1 {color:blue;}
h2 {color:silver;}

为xml文档中元素设置样式:
XML 文档:

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/css" href="note.css"?>
<note>
<to>George</to>
<from>John</from>
<heading>Reminder</heading>
<body>Don't forget the meeting!</body>
</note>

CSS 文档:

note
{
font-family:Verdana, Arial;
margin-left:30px;
}

to
{
font-size:28px;
display: block;
}

from
{
font-size:28px;
display: block;
}

heading
{
color: red;
font-size:60px;
display: block;
}

body
{
color: blue;
font-size:35px;
display: block;
}

(二)选择器分组

body, h2, p, table, th, td, pre, strong, em {color:gray;}

 

通配符选择器
* {color:red;}
相当于把文档中所有元素的颜色属性指定为red

 

(三)类选择器

多类选择器 例子:

.important {font-weight:bold;}
.warning {font-style:italic;}
.important.warning {background:silver;}

包含important的类加粗,包含warning的类斜体,同时包含important和warning的类背景银色

(四)id选择器

id选择器和类选择器的区别:
与类选择器不同,id选择器在一个html文档中只能使用一次
与类选择器不同,id选择器不能结合使用,因为id属性不允许以空格分隔的词列表
id能包含更多的语义

(五)属性选择器

简单的属性选择:
*[title] {color:red;}


把包含标题(title)的所有元素变为红色
a[href] {color:red;}


只对有 href 属性的锚(a 元素)应用样式
a[href][title] {color:red;}


为了将同时有 href 和 title 属性的 HTML 超链接的文本设置为红色
img[alt] {border: 5px solid red;}

对所有带有 alt 属性的图像应用样式

根据具体的属性值选择
a[href="http://www.w3school.com.cn/about_us.asp"] {color: red;}

将指向 Web 服务器上某个指定文档的超链接变成红色
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;}

字串匹配属性选择器
[abc^="def"] 选择 abc 属性值以 "def" 开头的所有元素
[abc$="def"] 选择 abc 属性值以 "def" 结尾的所有元素
[abc*="def"] 选择 abc 属性值中包含子串 "def" 的所有元素

特定属性选择器
*[lang|="en"] {color: red;}
选择 lang 属性等于 en 或以 en- 开头的所有元素

(六)后代选择器

根据上下文选择元素
h1 em {color:red;}
会把作为 h1 元素后代的 em 元素的文本变为 红色。其他 em 文本则不会被这个规则选中
h1 em 选择器可以解释为 “作为 h1 元素后代的任何 em 元素”

有关后代选择器有一个易被忽视的方面,即两个元素之间的层次间隔可以是无限的。
例如,如果写作 ul em,这个语法就会选择从 ul 元素继承的所有 em 元素,而不论 em 的嵌套层次多深。

(七)子元素选择器

如果您不希望选择任意的后代元素,而是希望缩小范围,只选择某个元素的子元素,请使用子元素选择器
h1 > strong {color:red;}

<h1>This is <strong>very</strong> <strong>very</strong> important.</h1>
<h1>This is <em>really <strong>very</strong></em> important.</h1>
这个规则会把第一个 h1 下面的两个 strong 元素变为红色,但是第二个 h1 中的 strong 不受影响

(八)相邻兄弟选择器

如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器
h1 + p {margin-top:50px;}
增加紧接在 h1 元素后出现的段落的上边距

(九)伪类

1.超链接
a:link {color: #FF0000}
a:visited {color: #00FF00}
2.focus
input:focus
{
background-color:yellow;
}
3. :first-child
p:first-child {font-weight: bold;}
li:first-child {text-transform:uppercase;}
匹配第一个子元素
必须声明 <!DOCTYPE>,这样 :first-child 才能在 IE 中生效。
4.lang
q:lang(no)
{
quotes: "~" "~"
}
<q lang="no">段落中的引用</q>

(十)伪元素

:first-line 向文本的首行设置特殊样式
:first-letter 为文本的首字母设置样式
:before 在元素的内容前面插入新内容
h1:before
{
content:url(logo.gif);
}
:after 在元素内容之后插入新内容
h1:after
{
content:url(logo.gif);
}

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网