QD1-P24 CSS 组合选择器

news2024/10/16 18:04:17

本节学习:CSS 组合选择器


本节视频

https://www.bilibili.com/video/BV1n64y1U7oj?p=24


组合选择器是使用多个基础选择器组合在一起来选择更具体的目标元素的方法。以下是几种常见的组合选择器:

下面四个选择器是本节学习内容

后代选择器(Descendant Combinator)

选择指定元素内部的所有匹配的后代元素。(子子孙孙)

  • 语法:ancestor descendant { style properties }
  • 示例:ul li { color: blue; }​ 选择所有<ul>​元素内的<li>​元素。

子选择器(Child Combinator)

选择指定元素的直接子元素。

  • 语法:parent > child { style properties }
  • 示例:div > p { color: red; }​ 选择所有直接父元素为<div>​的<p>​元素。

相邻兄弟选择器(Adjacent Sibling Combinator)

选择紧接在指定元素之后的第一个兄弟元素。

  • 语法:prev + next { style properties }
  • 示例:h1 + p { margin-top: 0; }​ 选择所有紧接在<h1>​元素之后的第一个<p>​元素。

通用兄弟选择器(General Sibling Combinator)

选择指定元素之后的所有兄弟元素。

  • 语法:prev ~ siblings { style properties }
  • 示例:h1 ~ p { font-style: italic; }​ 选择所有<h1>​元素之后的<p>​兄弟元素。

下面三个选择器是拓展

分组选择器(Grouping Selector)

将多个选择器组合在一起,以相同的样式规则应用给它们。

  • 语法:selector1, selector2, selectorN { style properties }
  • 示例:h1, h2, h3 { font-family: Arial, sans-serif; }​ 为<h1>​, <h2>​, 和 <h3>​元素设置相同的字体。

属性选择器组合

将属性选择器与其他类型的选择器组合使用。

  • 示例:a[href^="http"] { background: url('link.png') no-repeat right; }​ 选择所有<a>​元素的href​属性值以"http"开头的。

伪类和伪元素组合

将伪类或伪元素与其他类型的选择器组合使用。

  • 示例:input[type="text"]:focus { border: 1px solid blue; }​ 选择获得焦点的文本输入框。
    组合选择器可以更精确地定位页面上的元素,并减少对特定类或ID的依赖,从而使得样式表更加简洁和高效。不过,过度使用组合选择器可能会导致选择器过于复杂,降低CSS的可读性和可维护性。


用图片理解四个选择器

  • 后代,如图所示

Clip_2024-10-13_02-14-51

  • 子代,如图所示

Clip_2024-10-13_02-19-09

  • 相邻兄弟,如图所示

Clip_2024-10-13_02-23-27

  • 通用兄弟,如图所示

Clip_2024-10-13_02-26-16

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2209632.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在线Ipv4转Ipv6工具

具体请前往&#xff1a;Ipv4到Ipv6在线转换工具--可将Ipv4换算为Ipv6地址和Ipv6的缩写格式

.NET 通过C#设置Excel工作表的页面设置

Excel文件数据准备就绪并需要以报告形式呈现时&#xff0c;调整Excel文件的页面设置变得尤为重要&#xff0c;不仅关乎文档的专业外观&#xff0c;还直接影响到打印或电子分享时的可读性和实用性。通过C#来自动化这一过程&#xff0c;不仅可以节省大量手动配置的时间&#xff0…

yum仓库安装rabbitmq

yum仓库安装rabbitmq 1、配置yum仓库 vim /etc/yum.repos.d/rabbitmq.repo # In /etc/yum.repos.d/rabbitmq.repo## ## Zero dependency Erlang ##[rabbitmq_erlang] namerabbitmq_erlang baseurlhttps://packagecloud.io/rabbitmq/erlang/el/7/$basearch repo_gpgcheck1 gpg…

C++调试方法(Vscode)(一) ——本地调试

初学者在调试一段代码的时候&#xff0c;经常出于不明原因&#xff0c;写出bug&#xff0c;导致程序崩溃。但是定位崩溃的地方时&#xff0c;往往采用简单而朴素的方法&#xff1a;即采用cout或者printf进行输出。这种方式既原始&#xff0c;又低效。一个合格的工程师应该是通过…

龙信科技:引领电子物证技术,助力司法公正

文章关键词&#xff1a;电子数据取证、电子物证、手机取证、计算机取证、云取证、介质取证 在信息技术飞速发展的今天&#xff0c;电子物证在司法领域扮演着越来越重要的角色。苏州龙信信息科技有限公司&#xff08;以下简称“龙信科技”&#xff09;作为电子数据取证领域的先…

电脑健康检查用什么软件好 电脑健康状况检查工具在哪里

随着信息技术的日益发展&#xff0c;电脑已成为人们生活和工作不可或缺的重要工具。但是长时间使用电脑也会给电脑自身带来一些隐患&#xff0c;影响电脑的运行效率和使用寿命。因此&#xff0c;定期对电脑进行健康检查尤为重要&#xff0c;这样才能发现和解决潜在的问题。关于…

创建XGBoost模型(回归任务)MATLAB

代码如下&#xff1a; % 导入数据 data readtable(data.xlsx);% 假设最后一列是目标值&#xff0c;前面列为特征 X data{:, 1:end-1}; % 特征 y data{:, end}; % 目标值% 划分训练集和测试集 cv cvpartition(height(data), HoldOut, 0.2); XTrain X(training(cv)…

kali系统网络配置

一、查看网络接口名称 ifconfig #网络接口配置网络接口名称为eth0&#xff0c;下面的lo为环回地址的网络接口。 二、配置网络接口文件 sudo vim /etc/network/interfaces在文件interfaces中加入以下信息&#xff08;本文采用静态IP地址&#xff09;&#xff0c;为表示与ifa…

5G RedCap:轻量级的5G,工业物联网的理想技术

随着工业物联网&#xff08;IIoT&#xff09;在制造、能源、物流等领域的深入应用&#xff0c;对无线通信技术的需求越来越多样化。5G技术为工业物联网带来了超高速、低延迟和海量连接的能力&#xff0c;但对于某些工业应用场景&#xff0c;完整的5G功能可能显得过于复杂或昂贵…

【CSS in Depth 2 精译_048】7.2 CSS 响应式设计中的媒体查询原则(中):页面断点(breakpoint)样式的添加

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 【第七章 响应式设计】&#xff08;概述&#xff09; 7.1 移动端优先设计原则&#xff08;上篇&#xff09; 7.1.1 创建移动端菜单&#xff08;下篇&#xff09;7.1.2 给视口添加 meta 标签&#xf…

嵌入式AI-STM32部署卷积神经网络的哈利波特魔法棒方案项目

项目标题-电子法棒-卷积神经网络轨迹识别方案 基于STM32部署卷积神经网络控制设备方案-AI项目-STM32部署卷积神经网络方案-红外信号复制方案-轨迹识别 先了解一下背景&#xff0c;STM32是一款微控制器&#xff0c;做AI一般都是拥有算力的微处理器&#xff0c;量产非常昂贵&am…

RTKLIB学习记录【postpos、execses_b、execses_r】

本文主要记录对RTKLIB源码中postpos、execses_b、execses_r 函数的源码解读&#xff0c;不涉及其中的天线、星历等文件读取的内容&#xff0c;且为个人理解&#xff0c;如果有误&#xff0c;欢迎交流讨论。 一、postpos 函数部分 /rxn2rtkp函数 → postpos函数传递参数&#x…

TCP IP网络编程

文章目录 TCP IP网络编程一、基础知识&#xff08;TCP&#xff09;1&#xff09;Linux1. socket()2.bind()2.1前提2.2字节序与网络字节序2.3 字节序转换2.4 字符串信息转化成网络字节序的整数型2.5 INADDR_ANY 3.listen()4.accept()5.connect()6.案例小结6.1服务器端6.2 客户端…

《机器学习与数据挖掘综合实践》实训课程教学解决方案

一、引言 随着信息技术的飞速发展&#xff0c;人工智能已成为推动社会进步的重要力量。作为人工智能的核心技术之一&#xff0c;机器学习与数据挖掘在各行各业的应用日益广泛。本方案旨在通过系统的理论教学、丰富的实践案例和先进的实训平台&#xff0c;帮助学生掌握机器学习…

基于YOLO11深度学习的非机动车驾驶员头盔检测系统【python源码+Pyqt5界面+数据集+训练代码】深度学习实战、目标检测、卷积神经网络

《博主简介》 小伙伴们好&#xff0c;我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源&#xff0c;可关注公-仲-hao:【阿旭算法与机器学习】&#xff0c;共同学习交流~ &#x1f44d;感谢小伙伴们点赞、关注&#xff01; 《------往期经典推…

对秋季新款上衣的数据分析

秋季新款上衣评论分析 1.评论的基本统计分析(数据来源&#xff1a;淘宝评论信息接口) 接口链接&#xff1a;https://easydoc.net/s/42414529&#xff08;有需要调用接口的可以联系博主&#xff09; 评论长度分布图&#xff1a; 根据接口拉取数据获得的评论数据&#xff0c;并…

使用Ubuntu开发Zephyr RTOS时遇到FATAL ERROR: required program JLinkExe not found...解决办法

硬件平台&#xff1a;STM32L432RCT6 zephyr版本&#xff1a;Zephyr version 3.7.99 开发环境&#xff1a;ubuntu 24.4 在Ubuntu环境下遇到FATAL ERROR: required program JLinkExe not found; install it or add its location to PATH错误&#xff0c;意味着系统找不到JLinkEx…

Linux系统的用户和用户群组的各种权限总结

Linux系统的用户和用户群组的各种权限总结 用户群组用户群组文件添加群组&#xff1a;groupadd 用户用户文件新建用户&#xff1a;useradd修改用户&#xff1a;usermod删除用户&#xff1a;userdel 文件归属&#xff1a;chown文件权限&#xff1a;chmod相关文件和目录 用户群组…

网络通信——流量与路由(万字解读)

前言:流量控制与路由更新控制 如何控制网络流量可达性? 方案一:可通过修改路由条目(即对接收和发布的路由进行过滤)来控制流量可达性,这种方式称为路由策略。 方案二:可直接通过依据用户制定的策略进行转发,且该策略优于路由表转发,这种方式称为策略路由。 (1)什么…

音视频入门基础:H.264专题(18)——AVCDecoderConfigurationRecord简介

一、引言 H.264流行的包装方式有两种&#xff0c;一种是AnnexB&#xff0c;另一种是avcC。对于AnnexB包装的H.264码流&#xff0c;其SPS和PPS被当做普通的NALU来处理&#xff1b;而对于avcC包装的H.264码流&#xff0c;其SPS和PPS信息存贮在AVCDecoderConfigurationRecord中&a…