当前位置: 首页 > news >正文

CSS进阶篇——更多选择器 (selectors)

前面我们学习过HTML 选择器,类选择器和 ID 选择器,这几种选择器配合起来使用可以让我们精确定位 HTML 元素。

本篇要介绍的几个功能更加强大。

全局选择器

全局选择器用一个星号(*)来表示,它会作用于所有元素。全局选择器除了可以为页面设置全局样式之外,还可以配合其他选择器一起使用。

* {
    margin: 0;
    padding: 0;
}

#contact * {
    display: block;
}
  • 单独使用全局选择性相当于重置了浏览器的默认样式
  • 跟在其他选择器后面使用,只会作用于该选择器的子元素

子选择器

大于号(>)用于指定一级子元素。

<ul id="genus_examples">
    <li>Cats
        <ul>
            <li>Panthera</li>
            <li>Felis</li>
            <li>Neofelis</li>
        </ul>
    </li>
    <li>Apes
        <ul>
            <li>Pongo</li>
            <li>Pan</li>
            <li>Homo</li>
        </ul>
    </li>
</ul>

如果要给<ul id="geneus_examples"> 的一级子元素(<li> 标签) “Cats” 和 “Apes” 设置样式,CSS 可以这样写:

#genus_examples > li { 
    border: 1px solid red; 
}

其他的 <li> 元素不会受到影响,因为子选择器只作用于一级子元素。

如果要作用于所有子元素,可以这么写:

#genus_examples  li { 
    border: 1px solid red;
}

邻接选择器

加号(+)表示邻接选择器,只作用于第一个邻近的节点。

<h1>Clouded leopards</h1>
<p>Clouded leopards are cats that belong to the genus Neofelis.</p>
<p>There are two extant species: Neofelis nebulosa and Neofelis diardi.</p>

下面的 CSS 只会让第一个 <p> 的字体变为粗体:

h1 + p { 
    font-weight: bold; 
}

如果要作用于所有的兄弟节点,可以使用 CSS3 新提供的兄弟选择器(~):

h1 ~ p { 
    font-weight: bold; 
}

相关文章:

  • 嵌入式-ESP32
  • matplotlib绘制直方图,饼图,散点图,气泡图,箱型图,雷达图
  • JDBC编程六步、IDEA开发的第一个JDBC程序
  • 强化学习——day35 读论文:基于深度强化学习的网约车动态路径规划
  • 【408计算机组成原理】—原码、反码、补码、移码(六)
  • Vue入门【九】-- 动态路由和嵌套路由
  • Python数据类型:序列(列表list、元组tuple)
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • 算法分析与设计:10 大排序算法大汇总(Java)
  • 【斯坦福大学公开课CS224W——图机器学习】六、图神经网络1:GNN模型
  • Google Earth Engine(GEE)——GEE错误结果没有变化?
  • 《Improved Techniques for Training GANs》-论文阅读笔记
  • 十一假期,分享几个好玩儿的GitHub项目
  • AcWing 第71场周赛
  • Redis实战 - 02 Redis 保存短信验证码实现用户注册
  • JS 中的深拷贝与浅拷贝
  • [nginx文档翻译系列] 控制nginx
  • [原]深入对比数据科学工具箱:Python和R 非结构化数据的结构化
  • 《剑指offer》分解让复杂问题更简单
  • 「面试题」如何实现一个圣杯布局?
  • dva中组件的懒加载
  • electron原来这么简单----打包你的react、VUE桌面应用程序
  • Python_OOP
  • REST架构的思考
  • SpringCloud集成分布式事务LCN (一)
  • SQLServer之创建显式事务
  • ViewService——一种保证客户端与服务端同步的方法
  • 聚簇索引和非聚簇索引
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • 适配iPhoneX、iPhoneXs、iPhoneXs Max、iPhoneXr 屏幕尺寸及安全区域
  • 终端用户监控:真实用户监控还是模拟监控?
  • 正则表达式-基础知识Review
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • #pragma预处理命令
  • #QT项目实战(天气预报)
  • #vue3 实现前端下载excel文件模板功能
  • %@ page import=%的用法
  • %3cscript放入php,跟bWAPP学WEB安全(PHP代码)--XSS跨站脚本攻击
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (Java)【深基9.例1】选举学生会
  • (Note)C++中的继承方式
  • (pt可视化)利用torch的make_grid进行张量可视化
  • (板子)A* astar算法,AcWing第k短路+八数码 带注释
  • (二)hibernate配置管理
  • (二)linux使用docker容器运行mysql
  • (附源码)node.js知识分享网站 毕业设计 202038
  • (附源码)springboot宠物管理系统 毕业设计 121654
  • (附源码)springboot宠物医疗服务网站 毕业设计688413
  • (力扣题库)跳跃游戏II(c++)
  • (六) ES6 新特性 —— 迭代器(iterator)
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (十)T检验-第一部分
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (原创)Stanford Machine Learning (by Andrew NG) --- (week 9) Anomaly DetectionRecommender Systems...
  • (转) Face-Resources