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

前端---css 选择器

1. css 选择器的定义

css 选择器是用来选择标签的,选出来以后给标签加样式。

2. css 选择器的种类

  1. 标签选择器
  2. 类选择器
  3. 层级选择器(后代选择器)
  4. id选择器
  5. 组选择器
  6. 伪类选择器

3. 标签选择器

根据标签来选择标签,以标签开头,此种选择器影响范围大,一般用来做一些通用设置。

示例代码

<style type="text/css">p{color: red;}
</style><div>hello</div>
<p>hello</p>

4. 类选择器

根据类名来选择标签,以 . 开头, 一个类选择器可应用于多个标签上,一个标签上也可以使用多个类选择器,多个类选择器需要使用空格分割,应用灵活,可复用,是css中应用最多的一种选择器。

示例代码

<style type="text/css">.blue{color:blue}.big{font-size:20px}.box{width:100px;height:100px;background:gold} 
</style><div class="blue">这是一个div</div>
<h3 class="blue big box">这是一个标题</h3>
<p class="blue box">这是一个段落</p>

5. 层级选择器(后代选择器)

根据层级关系选择后代标签,以选择器1 选择器2开头,主要应用在标签嵌套的结构中,减少命名。

示例代码

<style type="text/css">div p{color: red;}.con{width:300px;height:80px;background:green}.con span{color:red}.con .pink{color:pink}.con .gold{color:gold}    
</style><div><p>hello</p>
</div><div class="con"><span>哈哈</span><a href="#" class="pink">百度</a><a href="#" class="gold">谷歌</a>
</div>
<span>你好</span>
<a href="#" class="pink">新浪</a>

注意点: 这个层级关系不一定是父子关系,也有可能是祖孙关系,只要有后代关系都适用于这个层级选择器

6. id选择器

根据id选择标签,以#开头, 元素的id名称不能重复,所以id选择器只能对应于页面上一个元素,不能复用,id名一般给程序使用,所以不推荐使用id作为选择器。

示例代码

<style type="text/css">#box{color:red} 
</style><p id="box">这是一个段落标签</p>   <!-- 对应以上一条样式,其它元素不允许应用此样式 -->
<p>这是第二个段落标签</p> <!-- 无法应用以上样式,每个标签只能有唯一的id名 -->
<p>这是第三个段落标签</p> <!-- 无法应用以上样式,每个标签只能有唯一的id名  -->

注意点: 虽然给其它标签设置id=“box”也可以设置样式,但是不推荐这样做,因为id是唯一的,以后js通过id只能获取一个唯一的标签对象。

7. 组选择器

根据组合的选择器选择不同的标签,以 , 分割开, 如果有公共的样式设置,可以使用组选择器。

示例代码

<style type="text/css">.box1,.box2,.box3{width:100px;height:100px}.box1{background:red}.box2{background:pink}.box2{background:gold}
</style><div class="box1">这是第一个div</div>
<div class="box2">这是第二个div</div>
<div class="box3">这是第三个div</div>

8. 伪类选择器

用于向选择器添加特殊的效果, 以 : 分割开, 当用户和网站交互的时候改变显示效果可以使用伪类选择器

示例代码

<style type="text/css">.box1{width:100px;height:100px;background:gold;}.box1:hover{width:300px;}
</style><div class="box1">这是第一个div</div>

9. 小结

  • css 选择器就是用来选择标签设置样式的
  • 常用的 css 选择器有六种,分别是:
    1. 标签选择器
    2. 类选择器
    3. 层级选择器(后代选择器)
    4. id选择器
    5. 组选择器
    6. 伪类选择器

相关文章:

  • iPad绘画之旅:从小白到文创手账设计的萌系简笔画探索
  • 基于双闭环PI的SMO无速度控制系统simulink建模与仿真
  • 华为gre隧道全部跑静态路由
  • Vue 初始化數組后操作另一個數組onMounted和watch
  • 单体项目-动态上下文问题
  • 蓝桥杯宝藏排序题目算法(冒泡、选择、插入)
  • 制作自己的 Docker 容器
  • 家校互通小程序实战开发02首页搭建
  • ARM GIC(四) gicv3架构基础
  • ModuleNotFoundError: No module named ‘tensorflow‘
  • 【华为OD题库-107】编码能力提升计划-java
  • 出现 Error:Unable to access jarfile xxxx\target\nacos-server.jar 解决方法
  • 芯科科技以卓越的企业发展和杰出的产品创新获得多项殊荣
  • Apache Flink 进阶教程(七):网络流控及反压剖析
  • SpringSecurity6 | 登录失败后的JSON处理
  • Akka系列(七):Actor持久化之Akka persistence
  • Android组件 - 收藏集 - 掘金
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • java8-模拟hadoop
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • JS字符串转数字方法总结
  • laravel 用artisan创建自己的模板
  • LintCode 31. partitionArray 数组划分
  • Lsb图片隐写
  • MySQL几个简单SQL的优化
  • Python学习笔记 字符串拼接
  • 从零开始的webpack生活-0x009:FilesLoader装载文件
  • 订阅Forge Viewer所有的事件
  • 分类模型——Logistics Regression
  • 关于Flux,Vuex,Redux的思考
  • 关于for循环的简单归纳
  • 力扣(LeetCode)56
  • 前端
  • 前端面试题总结
  • 前端知识点整理(待续)
  • 如何用Ubuntu和Xen来设置Kubernetes?
  • 我的zsh配置, 2019最新方案
  • 系统认识JavaScript正则表达式
  • 小程序01:wepy框架整合iview webapp UI
  • 扩展资源服务器解决oauth2 性能瓶颈
  • ​​​​​​​​​​​​​​汽车网络信息安全分析方法论
  • #14vue3生成表单并跳转到外部地址的方式
  • #stm32驱动外设模块总结w5500模块
  • #我与Java虚拟机的故事#连载10: 如何在阿里、腾讯、百度、及字节跳动等公司面试中脱颖而出...
  • (13)Hive调优——动态分区导致的小文件问题
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (定时器/计数器)中断系统(详解与使用)
  • (离散数学)逻辑连接词
  • (力扣题库)跳跃游戏II(c++)
  • (循环依赖问题)学习spring的第九天
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • .describe() python_Python-Win32com-Excel
  • .net mvc 获取url中controller和action
  • .net后端程序发布到nignx上,通过nginx访问
  • .NET下ASPX编程的几个小问题