博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
选择符
阅读量:6632 次
发布时间:2019-06-25

本文共 3296 字,大约阅读时间需要 10 分钟。

 

CSS语法结构由三部分组成:选择符(Selector),属性(property)和值(value).

使用方法:  Selector  { Property: value}

类型选择符

所谓类型选择符,是指网页中已有的标签类型作为名称的选择符

例如:body, div, span等 

全局选择符

CSS全局选择符 -- 匹配文档中的任意一个元素

*{
color: pink; font-size: 12px; border: 1px solid blue;}

统一定义页面的所有元素

群组选择符

除了可以对单个对象进行样式指定,还可以对一组对象进行相同的样式指派.只需要使用逗号对选择符进行分隔

例如:h1,h2,h3,span { font-family:宋体 }

包含选择符

当我们仅仅想对某一个对象中的子对象进行样式指定时,包含选择符就被派上了用场.包含选择符组合中前一个对象包含后一个对象,对象之间使用空格作为分隔符.

例如:h1 span{ font-weight:bold }

子对象选择符

包含选择符比子选择符范围更广,因包含关系中一个元素可以是另外一个元素的"儿子"、"孙子"、"从孙子",而子对象选择符中的一个元素只能是另外一个元素的"儿子","孙子"或"从孙子"不行

例如

p > code{
color:blue; font-size:120%;}

梦之都CSS子对象选择符可用,蓝色

上面的例子可以显示p > code定义的样式.

梦之都CSS子对象选择符不可用

上面的例子不能显示p > code定义的样式,因为p与code不是直接包含关系,是间接包含关系(code是p的"孙子")

直接相邻选择符

h1 + p{
color:red;}

上面例子定义了直接相邻选择符

梦之都CSS 直接相邻选择符

使用了样式

由于p和h1是直接的邻居,所以p段落中的内容可以显示红色样式

普通相邻选择符

匹配文档中符合选择符规定的普通相邻关系的元素,例如E ~ F选择符,E和F在文档被相同的元素包含(具有相同的父元素)且文档中F在E后出现(无需紧随其后),则选择符匹配元素F

span ~ p{
color:red;}

 

id选择符

每个id都是唯一的,不允许重复。因此一个ID选择符在一个HTML文档中只可使用一次

css中的格式:#id名{样式}   

class选择符

类选择符可以包括HTML文档中不同类型的一些元素(就像一种分类),因此一个类选择符在一个HTML文档中可使用多次

css中的格式是:.class名{样式}

组合选择符

对于以上所有css选择符,均可以进行组合使用  

如:  .p1,#content,h1 .p2{ color:red }         表示class为p1,id为content,以及类型选择符h1标签下的所有class为p2的标签内字体的颜色为红色

伪类

CSS中样式和HTML文档中元素的连接通常基于元素在文档中的位置,这种方式满足于大部分需求。不过由于HTML文档结构的限制,一些效果无法实现,例如,某些用户行为引发的事件,下面是一些示例:

  • 当用户鼠标移动到某个HTML元素上
  • 离开HTML元素
  • 点击HTML元素

伪类是一种特殊的类,它由CSS自动支持,属CSS的一种扩展类,名称不能被用户自定义,使用时只能够按标准格式进行应用

例如:

a: hover {

              background-color:#000;

   }

 

属性名选择符

 [att] -- CSS属性名选择符,匹配文档中具有att属性的E元素

 

a[title]{
color:red; border: 1px solid blue;}

所有具有title属性的a标签将显示红色的文字,并显示蓝色边框

属性值选择符[att=val]

[att=val] -- CSS E[att=val] 属性值选择符,匹配文档中具有att属性且其值为val的E元素

a[title="fwj"]{
color:red;}

所有title值为fwj的a标签的文字颜色将显示红色

属性值选择符也可以匹配多个属性

*[title="fwj"][href="http://www.baidu.com/"]{
color: pink; border: 1px solid blue;}

只有title为fwj和href为的标签,文字才显示粉色

 属性值选择符E[att~=val]

E[att~=val] -- CSS E[att~=val] 属性值选择符,匹配文档中具有att属性且其中一个值(多个值使用空格分隔)为val(val不能包含空格)的E元素

 

a[title~="baidu"]{
color:red;}红色

title属性包含三个值(多个值使用空格分隔),其中一个为baidu,因此可匹配样式

 属性值选择符 E[att|=val]

 E[att|=val] -- CSS E[att|=val] 属性值选择符,匹配文档中具有att属性且其中一个值为val,或者以val开头紧随其后的是连字符-的E元素(主要用来允许语言编码的匹配,例如HTML中的hreflang属性。关于lang(或 xml:lang)语言码的匹配,可查看:lang伪类)

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

梦之都红色

梦之都红色

梦之都蓝色

属性值子串选择符E[att^=val]

E[att^=val] -- CSS E[att^=val]属性值子串选择符,匹配文档中具有att属性且其值的前缀为val的E元素

a[href^="mailto"] {
color: green; background: url(/images/css/icon-mail.png) center right no-repeat;}a[href^="https://"]{
color:red; background: url(/images/css/icon-ssl.png) center right no-repeat;}a[href^="ftp://"]{
color:gold; background: url(/images/css/icon-file.png) center right no-repeat;}

上面示例根据不同的链接协议匹配不同的样式图片

 属性值子串选择符E[att$=val]

E[att$=val] -- CSS E[att$=val] 属性值子串选择符,匹配文档中具有att属性且其值的后缀为val的E元素

 

a[href$=".html"]{
color:red;}a[href$=".php"]{
color:green;}a[href$=".jsp"]{
color:blue;}

为不同的链接文件匹配不同的样式

属性值子串选择符E[att*=val]

E[att*=val] -- CSS E[att*=val] 属性值子串选择符,匹配文档中具有att属性且其包含val的E元素

a[href*=".html"]{
color:red;}a[href*=".php"]{
color:green;}a[href*=".jsp"]{
color:blue;}红色字体绿色字体蓝色字体

由于多数动态网页的网址后都有参数,因此可以使用[att*=val]匹配动态网页的样式

转载于:https://www.cnblogs.com/mingluosunshan/p/3264915.html

你可能感兴趣的文章
spark 数据预处理 特征标准化 归一化模块
查看>>
正则表达式中参数g、i、m的作用(share)
查看>>
使用Solr构建企业级的全文检索(四)---------写入文档
查看>>
squid的正向代理和反向代理
查看>>
linux下命令与文件的查询
查看>>
SEO意识的网站设计:设计和SEO的完美结合可能么?
查看>>
IP 算法
查看>>
IBM_System_x3650服务器固件升级手顺
查看>>
awk单行脚本
查看>>
软件开发之通病解析
查看>>
python wxPython 5 (框架 wx.Frame)
查看>>
windows server backup 功能备份虚拟机
查看>>
PHP多进程
查看>>
现代前端开发路线图:从零开始,一步步成为前端工程师
查看>>
ESXi 5.0设置时间
查看>>
WIN2008R2下安装plsqldeveloper和toad
查看>>
jquery 通过点击事件获取id
查看>>
Linux无人值守自动化安装详细配置流程!
查看>>
hadoop2.4.1+hbase0.98.3实现的分布式网盘系统初步
查看>>
ibatis批量新增-自增长序列
查看>>