广告
返回顶部
首页 > 资讯 > 后端开发 > Python >css3 选择器
  • 521
分享到

css3 选择器

选择器 2023-01-31 01:01:58 521人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

  以前学习CSS的时候总是看见一个效果就看一下,没有系统的学习,最近看见了这个css3的网站,打算系统学习下,今天要跟大家分享的是css3的选择器。 我们先来看一张选择器列表图: 一、基本选择器 基本选择器参考传送门:Http://ww

  以前学习CSS的时候总是看见一个效果就看一下,没有系统的学习,最近看见了这个css3的网站,打算系统学习下,今天要跟大家分享的是css3的选择器。

我们先来看一张选择器列表图:

一、基本选择器

基本选择器参考传送门:Http://www.w3cplus.com/css3/basic-selectors

1、通配符选择器(*)

通配符选择器是用来选择所有元素,也可以选择某个元素下的所有元素,如:

  1. *{ 
  2.     marigin: 0; 
  3.     padding: 0; 

  1. .demo * {border:1px solid blue;} 

2、元素选择器(E)

元素选择器,是css选择器中最常见而且最基本的选择器。元素选择器其实就是文档的元素,如html,body,p,div等等,比如下面的li:

  1. li {background-color: grey;color: orange;} 

3、类选择器(.className)

类选择器是以一独立于文档元素的方式来指定样式,使用类选择器之前需要在html元素上定义类名,换句话说需要保证类名在html标记中存在,这样才能选择类

  1. <li class="active important items" >2</li> 

其中“active,important, items”就是我们以类给li加上一个类名,以便类选择器能正常工作,从而更好的将类选择器的样式与元素相关联。

  1. .important {font-weight: bold; color: yellow;} 

类选择器还可以结合元素选择器来使用,也可以具备多类名。

多类选择器(.className1.className2)不被ie6支持。

4、id选择器(#ID)

ID选择器和类选择器相似,在使用ID选择器之前也需要先在html文档中加注ID名称,这样在样式选择器中才能找到相对应的元素,不同的是ID选择器是一个页面中唯一的值,我们在类使用时是在相对应的类名前加上一个“.”号(.className)而id选择器是在名称前使用"#"如(#id)

  1. #first {background: lime;color: #000;} 
  2. #last {background: #000;color: lime;} 

5、后代选择器(E F)

后代选择器也被称作包含选择器,所起作用就是可以选择某元素的后代元素,比如说:E F,前面E为祖先元素,F为后代元素,所表达的意思就是选择了E元素的所有后代F元素,请注意他们之间需要一个空格隔开。

  1. .demo li {color: blue;} 

6、子元素选择器(E>F)

子元素选择器只能选择某元素的子元素,其中E为父元素,而F为子元素,其中E>F所表示的是选择了E元素下的所有子元素F。这和后代选择器(E F)不一样,在后代选择器中F是E的后代元素,而子元素选择器E > F,其中F仅仅是E的子元素而以。

  1. ul  > li {background: green;color: yellow;} 

IE6不支持子元素选择器。

7、相邻兄弟选择器(E+F)

相邻兄弟选择器可以选择紧接在另一元素后的元素,而且他们具有一个相同的父元素,换句话说,EF两元素具有一个相同的父元素,而且F元素在E元素后面,而且相邻,这样我们就可以使用相邻兄弟元素选择器来选择F元素。

  1. li + li {background: green;color: yellow; border: 1px solid #ccc;} 

IE6不支持相邻兄弟选择器

8、通用兄弟选择器(E~F)

通用兄弟元素选择器是CSS3新增加一种选择器,这种选择器将选择某元素后面的所有兄弟元素,他们也和相邻兄弟元素类似,需要在同一个父元素之中,换句话说,E和F元素是属于同一父元素之内,并且F元素在E元素之后,那么E ~ F 选择器将选择中所有E元素后面的F元素。

  1. .active ~ li {background: green;color: yellow; border: 1px solid #ccc;} 

IE6不支持通用兄弟选择器

9、群组选择器(selector1,selector2,…,selectorN)

群组选择器是将具有相同样式的元素分组在一起,每个选择器之间使用逗号“,”隔开,如上面所示selector1,selector2,...,selectorN。这个逗号告诉浏览器,规则中包含多个不同的选择器,如果不有这个逗号,那么所表达的意就完全不同了,省去逗号就成了我们前面所说的后代选择器,这一点大家在使用中千万要小心加小心。

  1. .first, .last {background: green;color: yellow; border: 1px solid #ccc;} 

二、属性选择器

属性选择器参考传送门:http://www.w3cplus.com/css3/attribute-selectors

 

IE6不支持属性选择器

CSS3的属性选择器主要包括以下几种:

1、E[attr]:只使用属性名,但没有确定任何属性值;

  1. .demo a[id] {background: blue; color:yellow;font-weight:bold;} 

2、E[attr="value"]:指定属性名,并指定了该属性的属性值;

  1. .demo a[id="first"] {background: blue; color:yellow;font-weight:bold;} 

3、E[attr~="value"]:指定属性名,并且具有属性值,此属性值是一个词列表,并且以空格隔开,其中词列表中包含了一个value词,而且等号前面的“~”不能不写;

  1. .demo a[title~="WEBsite"]{background:orange;color:green;} 

属性选择器中有波浪(~)时属性值有value时就相匹配,没有波浪(~)时属性值要完全是value时才匹配。

4、E[attr^="value"]:指定了属性名,并且有属性值,属性值是以value开头的;

  1. .demo a[href^="http://"]{background:orange;color:green;} 
  2. .demo a[href^="mailto:"]{background:green;color:orange;} 

5、E[attr$="value"]:指定了属性名,并且有属性值,而且属性值是以value结束的;

  1. .demo a[href$="png"]{background:orange;color:green;} 

6、E[attr*="value"]:指定了属性名,并且有属性值,而且属值中包含了value;

  1. .demo a[title*="site"]{background:black;color:white;} 

7、E[attr|="value"]:指定了属性名,并且属性值是value或者以“value-”开头的值(比如说zh-cn);

  1. .demo a[lang|="zh"]{background:gray;color:yellow;} 

 

三、伪类选择器

伪类选择器参考传送门:http://www.w3cplus.com/css3/pseudo-class-selector

1、动态伪类

动态伪类,因为这些伪类并不存在于HTML中,而只有当用户和网站交互的时候才能体现出来,动态伪类包含两种,第一种是我们在链接中常看到的锚点伪类,如":link",":visited";另外一种被称作用户行为伪类,如“:hover”,":active"和":focus"。先来看最常见的锚点伪类

  1. .demo a:link {color:gray;} 
  2. .demo a:visited{color:yellow;} 
  3. .demo a:hover{color:green;} 
  4. .demo a:active{color:blue;} 

 

对于这四个锚点伪类的设置,有一点需要特别注意,那就是他们的先后顺序,要让他们遵守一个爱恨原则LoVe/HAte,也就是Link--visited--hover--active。如果你把顺序搞错了会给你带来意想不到的错误,大家对于这个应该很熟悉的,如果是初学的朋友,可以私下练习一下。其中:hover和:active又同时被列入到用户行为伪类中,他们所表达的意思是:

  1. :hover用于当用户把鼠标移动到元素上面时的效果;
  2. :active用于用户点击元素那一下的效果(正发生在点的那一下,松开鼠标左键此动作也就完成了)
  3. :focus用于元素成为焦点,这个经常用在表单元素上。

 

对于:hover在IE6下只有a元素支持,:active只有IE7-6不支持,:focus在IE6-7下不被支持。

2、UI元素状态伪类

我们把":enabled",":disabled",":checked"伪类称为UI元素状态伪类,这些主要是针对于HTML中的FORM元素操作,最常见的比如我们"type="text"有enable和disabled两种状态,前者为可写状态后者为不可状态;另外"type="radio"和"type="checkbox""有"checked"和"unchecked"两种状态。来看两个实例,比如说你想将"disabled"的文本框与别的文本框区别出来,你就可以这样应用

  1. input[type="text"]:disabled {border:1px solid #999;background-color: #fefefe;} 

IE6-8不支持":checked",":enabled",":disabled"这三种选择器。

3、CSS3的:nth选择器

这节内容才是关键,也是CSS3选择器最新部分,有人也称这种选择器为CSS3结构类,下面我们通过实际的应用来具体了解他们的使用和区别,首先列出他具有的选择方法:

1):fist-child选择某个元素的第一个子元素;

  1. .demo li:first-child {background: green; border: 1px dotted blue;} 

2):last-child选择某个元素的最后一个子元素;

  1. .demo li:last-child {background: green; border: 2px dotted blue;} 

3):nth-child()选择某个元素的一个或多个特定的子元素;

  1. :nth-child(length); 
  2. :nth-child(n); 
  3. :nth-child(n*length) 
  4. :nth-child(n+length); 
  5. :nth-child(-n+length) 
  6. :nth-child(n*length+1); 
  7. //上面length为整数 

这里的“n”只能是"n",不能使用其他字母代替,不然会没有任何效果的。"length"为整数。

4):nth-last-child()选择某个元素的一个或多个特定的子元素,从这个元素的最后一个子元素开始算;

  1. .demo li:nth-last-child(4) {background: lime;} 

“:nth-child()”是从元素的第一个开始计算,而“:nth-last-child()”是从元素的最后一个开始计算,他们的计算方法都是一样的。同样在IE6-8和FF3.0-浏览器不支持“:nth-last-child()”选择器。

5):nth-of-type()选择指定的元素;

6):nth-last-of-type()选择指定的元素,从元素的最后一个开始计算;

7):first-of-type选择一个上级元素下的第一个同类子元素;

8):last-of-type选择一个上级元素的最后一个同类子元素;、

:nth-of-type,:nth-last-of-type;:first-of-type和:last-of-type实际意义并不是很大,我们前面讲的:nth-child之类选择器就能达到这此功能,不过大家要是感兴趣还是可以了解一下,个人认为实用价值并不是很大。此类说法仅供参考。

9):only-child选择的元素是它的父元素的唯一一个了元素;

IE6-8浏览器不支持:only-child选择器;

10):only-of-type选择一个元素是它的上级元素的唯一一个相同类型的子元素;

IE6-8和FF3.0-浏览器不支持:only-of-type选择器。

11):empty选择的元素里面没有任何内容。

IE6-8浏览器不支持:empty选择器

4、否定选择器(:not)

否定选择器和jq中的:not选择器一模一样,就拿form中的元素来说明这个选择器的用法,比如你想对form中所有input加边框,但又不想submit也起变化,此时就可以使用:not为实现

  1. input:not([type="submit"]) {border: 1px solid red;} 

否定选择器 :not(),可以让你定位不匹配该选择器的元素。IE6-8浏览器不支持:not()选择器

5、伪元素

CSS中的伪元素大家以前看过::first-line,:first-letter,:before,:after;那么在CSS3中,他对伪元素进行了一定的调整,在以前的基础上增加了一个“:”也就是现在变成了“::first-letter,::first-line,::before,::after”另外他还增加了一个“::selection”,两个“::”和一个“:”css3中主要用来区分伪类和伪元素,到目前来说,这两种方式都是被接受的,也就是说不管使用哪种写法所起的作用都是一样的,只是一个书写格式不同而以。

 

--结束END--

本文标题: css3 选择器

本文链接: https://www.lsjlt.com/news/183577.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • css3 选择器
      以前学习css的时候总是看见一个效果就看一下,没有系统的学习,最近看见了这个css3的网站,打算系统学习下,今天要跟大家分享的是css3的选择器。 我们先来看一张选择器列表图: 一、基本选择器 基本选择器参考传送门:http://ww...
    99+
    2023-01-31
    选择器
  • CSS3选择器有哪些
    这篇文章主要介绍CSS3选择器有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!1 *:通用选择器* {   margin:0; ...
    99+
    2022-10-19
  • 有哪些css3选择器
    这篇文章主要介绍“有哪些css3选择器”,在日常操作中,相信很多人在有哪些css3选择器问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”有哪些css3选择器”的疑惑有所帮助!接...
    99+
    2022-10-19
  • css3选择器怎么用
    今天小编给大家分享一下css3选择器怎么用的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。 ...
    99+
    2022-10-19
  • css3选择器如何选第几个
    这篇文章主要介绍“css3选择器如何选第几个”,在日常操作中,相信很多人在css3选择器如何选第几个问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”css3选择器如何选第几个”...
    99+
    2022-10-19
  • CSS3选择器怎么运用
    这篇“CSS3选择器怎么运用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“CSS3选择器怎...
    99+
    2022-10-19
  • Css3的选择器有哪些
    本篇内容介绍了“Css3的选择器有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在css中,选择器是一...
    99+
    2022-10-19
  • css3高级选择器的用法
    这篇文章主要讲解了“css3高级选择器的用法”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css3高级选择器的用法”吧!css3属性选择器css3之属性选择...
    99+
    2022-10-19
  • css3属性选择器怎么用
    小编给大家分享一下css3属性选择器怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! 在css3还未出现之前。我们...
    99+
    2022-10-19
  • CSS3中selection选择器怎么用
    这篇文章给大家分享的是有关CSS3中selection选择器怎么用的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。   在CSS3中,我们可以使用“::selection选择器”...
    99+
    2022-10-19
  • css3有哪些层次选择器
    本篇内容介绍了“css3有哪些层次选择器”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!属于css3层次选择...
    99+
    2022-10-19
  • css3属性选择器如何用
    本文小编为大家详细介绍“css3属性选择器如何用”,内容详细,步骤清晰,细节处理妥当,希望这篇“css3属性选择器如何用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。 ...
    99+
    2022-10-19
  • css3层次选择器怎么用
    本篇内容主要讲解“css3层次选择器怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css3层次选择器怎么用”吧! 用法:1、后...
    99+
    2022-10-19
  • CSS3兄弟选择器怎么用
    这篇文章主要介绍CSS3兄弟选择器怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! css3中兄弟选择器的语法:1、“+”兄弟选择器,语法为“指定元素...
    99+
    2022-10-19
  • css3新增选择器有什么
    这篇文章主要讲解了“css3新增选择器有什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css3新增选择器有什么”吧!css3选择器有:“[att^="val"]”、“...
    99+
    2023-06-14
  • Css3属性选择器和伪类选择器的示例分析
    这篇文章主要介绍了Css3属性选择器和伪类选择器的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。属性选择器: [attr~...
    99+
    2022-10-19
  • css3类选择器中结合元素选择器和多类选择器的使用案例
    这篇文章主要介绍css3类选择器中结合元素选择器和多类选择器的使用案例,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体代码如下所示:<!DOCTYPE html&g...
    99+
    2022-10-19
  • CSS3 :nth-child()选择器有什么用
    CSS3 :nth-child()选择器用于选择指定父元素下的特定位置的子元素。它允许你根据位置选择子元素,并且可以与其他选择器组合...
    99+
    2023-10-12
    CSS3
  • css3中focus-within选择器怎么用
    这篇文章主要介绍css3中focus-within选择器怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!伪元素和伪类说到这个,我们先回顾一下,伪类选择器和伪元素选择器,老版的浏览器没有严格区分下面 2 种写法。a...
    99+
    2023-06-08
  • 如何在CSS3中新增选择器
    本篇文章为大家展示了如何在CSS3中新增选择器,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。结构(位置)伪类选择器(CSS3):first-child :选取属于其父元素的首个子元素的指定选择器:l...
    99+
    2023-06-08
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作