CSS3高级选择器用法

CSS3高级选择器用法CSS3高级选择器用法介绍

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

CSS3的高级选择器在开发中还是蛮有用的,下面我们来看一下都有哪些高级选择器。

1、相邻兄弟选择器

作用:匹配指定元素的相邻【下一个】兄弟元素

语法:由 + 号来充当连接符,如 选择器1+选择器2

示例:html代码如下

<div id="d1">
   <div id="d2">我是d2</div>
   <p id="p1">我是p1</p>
   <ul id="u1">
      <li>HTML</li>
      <li>css</li>
      <li>Javascript</li>
   </ul>
   <ul id="u2">
      <li>HTML</li>
      <li>css</li>
      <li>Javascript</li>
   </ul>
</div>

我们用相邻兄弟原则器选择id为p1的元素下面id为u1的元素,给它背景设置为红色

#p1+#u1{
 
 background:#f00;}

效果如下:

CSS3高级选择器用法

2、通用兄弟选择器

作用:匹配到某元素【后面的】 【所有指定】兄弟元素

语法:由~充当结合符,如 选择器1~选择器2

示例:

我们用通用兄弟选择器选择id为p1的元素后面所有的ul元素,将其背景设置为红色

#p1~ul{
 
 background:#f00;}

效果如下:

CSS3高级选择器用法

3、属性选择器

3.1、[attribute]:匹配具有attribute属性的元素

如:div[id]:匹配所有具备id属性的div

3.2、element[attr1][attr2] 匹配所有具备attr1属性以及attr2属性的element元素

如:div[id][class] 匹配同时具备id和class属性的div

3.3、element[attr=value] 匹配attr属性值为value的element元素

如:input[type=text] 或 input[type=’text’],匹配type为text的input元素

3.4、element[attr~=value] 匹配attr属性值为一个值列表,并在此列表中包含单词value的element元素

如:

<div class=”content warning important lf”></div>

div[class~=content]:   能匹配
div[class~=lf]:
              能匹配
div[class~=on]:
           不能匹配

3.5、element[attr^=value] 匹配attr属性值,以value开始的element元素

如:div[class^=my]: 匹配class属性值以my开始的div元素

3.6、element[attr$=value] 匹配attr属性值,以value作为结束的element元素

如:div[class$=over]: 匹配class属性值以over作为结束的div元素

3.7、element[attr*=value] 匹配attr属性值中【包含】value的element元素

如:div[class*=on] 匹配class属性值中包含on的div元素

4、伪类选择器

4.1、目标伪类:突出显示活动的锚点元素

语法::target

如:

a:target{}

div:target{}

4.2、元素状态伪类:多数用在表单控件上,去匹配表单控件的不同状态

4.2.1、:enabled       匹配每个已启用元素(所有表单控件)

4.2.2、:disabled      匹配每个被禁用元素(所有表单控件)

4.2.3、:checked      匹配每个已被选中的input元素(适用radio和checkbox)

4.3、结构伪类:从标记的层次结构来匹配元素

4.3.1、:first-child     匹配属于父元素中的首个子元素

4.3.2、:last-child     匹配属于其父元素中的最后一个子元素

4.3.3、:empty          匹配没有子元素(包含文本内容)的元素

4.3.4、:only-child   匹配属于其父元素中的唯一子元素

4.3.5、:nth-child(n)匹配属于其父元素中的第n个子元素

4.4、否定伪类:将匹配的元素排除在外

语法::not(selector);

5、伪元素选择器

5.1、::first-letter    获取匹配元素的第一个字母(字符)

5.2、::first-line      获取匹配元素的首行

5.3、::selection    匹配用户选取的部分

注意:W3C规定所有的伪类选择器全部使用一个冒号,在CSS3中,所有的伪元素选择器,全部使用两个冒号。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/157744.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 文件io之——open/close

    文件io之——open/close

    2022年3月1日
    50
  • LSTM模型搭建_LSTM神经网络

    LSTM模型搭建_LSTM神经网络defLSTM_Classifier(self,train,trainLabel,test,testLabel,val_test,val_label,new_test=None):train,test=np.array(train),np.array(test)train,test=train.reshape(train.shape[0],1,train.shape[1]),test.reshape(test.shape[0],1,tes…

    2025年10月23日
    7
  • 常见的js算法_javascript数据结构与算法

    常见的js算法_javascript数据结构与算法常见的几种js算法(一)快速排序算法1.1:先从数列中取出一个数作为“基准”。1.2:分区过程:将比这个“基准”大的数全放到“基准”的右边,小于或等于“基准”的数全放到“基准”的左边。1.3:再对左右区间重复第二步,直到各区间只有一个数。代码实现:varquickSort=function(arr){if(arr.length<=1){retur…

    2022年10月4日
    4
  • 工作流引擎Activiti入门-01

    工作流引擎Activiti入门-01工作流引擎 Activiti 入门工作流引擎工作流 BPMBPMNActiv 集成 Activiti 新建数据库新建项目 log4j 的配置 mysql 的配置生成 mysql 表流程操作 Activitibpmn 流程定义流程存储 部署流程启动任务查询任务处理工作流引擎工作流是指业务过程的部分或整体在计算机应用环境下的自动化 工作流主要解决的主要问题是 为了实现某个业务目标 利用计算机在多个参与者之间按某种预定规则自动传递文档 信息或者任务 BPMBPM BusinessProc

    2025年6月14日
    3
  • 机器学习算法(一):逻辑回归模型(Logistic Regression, LR)[通俗易懂]

    机器学习算法(一):逻辑回归模型(Logistic Regression, LR)[通俗易懂]线性分类器:模型是参数的线性函数,分类平面是(超)平面;非线性分类器:模型分界面可以是曲面或者超平面的组合。典型的线性分类器有感知机,LDA,逻辑斯特回归,SVM(线性核);典型的非线性分类器有朴素贝叶斯(有文章说这个本质是线性的,http://dataunion.org/12344.html),kNN,决策树,SVM(非线性核)https://www.cnblogs.com/sparkw…

    2022年7月14日
    18
  • 在python中,如果异常并未被处理或捕捉_抛出异常是什么意思

    在python中,如果异常并未被处理或捕捉_抛出异常是什么意思一文掌握Pyhton的异常捕获和抛出,包括Python内置异常类型、自定义异常类等。

    2022年10月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号