前端之CSS选择器
基本选择器
元素选择器
- p {color: "red";}
ID选择器
- #i1 {
- background-color: red;
- }
类选择器
- .c1 {
- font-size: 14px;
- }
- p.c1 {
- color: red;
- }
注意:
样式类名不要用数字开头(有的浏览器不认)。
标签中的class属性如果有多个,要用空格分隔。
通用选择器
- * {
- color: white;
- }
组合选择器
后代选择器
- /*li内部的a标签设置字体颜色*/
- li a {
- color: green;
- }
儿子选择器
- /*选择所有父级是 <div> 元素的 <p> 元素*/
- div>p {
- font-family: "Arial Black", arial-black, cursive;
- }
毗邻选择器
- /*选择所有紧接着<div>元素之后的<p>元素*/
- div+p {
- margin: 5px;
- }
弟弟选择器
- /*i1后面所有的兄弟p标签*/
- #i1~p {
- border: 2px solid royalblue;
- }
属性选择器
- /*用于选取带有指定属性的元素。*/
- p[title] {
- color: red;
- }
- /*用于选取带有指定属性和值的元素。*/
- p[title=""] {
- color: green;
- }
- /*找到所有title属性以hello开头的元素*/
- [title^="hello"] {
- color: red;
- }
- /*找到所有title属性以hello结尾的元素*/
- [title$="hello"] {
- color: yellow;
- }
- /*找到所有title属性中包含(字符串包含)hello的元素*/
- [title*="hello"] {
- color: red;
- }
- /*找到所有title属性(有多个值或值以空格分割)中有一个值为hello的元素:*/
- [title~="hello"] {
- color: green;
- }
- 不怎么常用的属性选择器
不怎么常用的属性选择器
分组和嵌套
分组
当多个元素的样式相同的时候,我们没有必要重复地为每个元素都设置样式,我们可以通过在多个选择器之间使用逗号分隔的分组选择器来统一设置元素样式。
例如:
- div, p {
- color: red;
- }
上面的代码为div标签和p标签统一设置字体为红色。
- div,
- p {
- color: red;
- }
嵌套
多种选择器可以混合起来使用,比如:.c1类内部所有p标签设置字体颜色为红色。
- .c1 p {
- color: red;
- }
伪类选择器
- /* 未访问的链接 */
- a:link {
- color: #FF0000
- }
- /* 已访问的链接 */
- a:visited {
- color: #00FF00
- }
- /* 鼠标移动到链接上 */
- a:hover {
- color: #FF00FF
- }
- /* 选定的链接 */
- a:active {
- color: #0000FF
- }
- /*input输入框获取焦点时样式*/
- input:focus {
- outline: none;
- background-color: #eee;
- }
伪元素选择器
first-letter
常用的给首字母设置特殊样式:
- p:first-letter {
- font-size: 48px;
- color: red;
- }
before
- /*在每个<p>元素之前插入内容*/
- p:before {
- content:"*";
- color:red;
- }
after
- /*在每个<p>元素之后插入内容*/
- p:after {
- content:"[?]";
- color:blue;
- }
before和after多用于清除浮动。
选择器的优先级
CSS继承
继承是CSS的一个主要特征,它是依赖于祖先-后代的关系的。继承是一种机制,它允许样式不仅可以应用于某个特定的元素,还可以应用于它的后代。例如一个body定义了的字体颜色值也会应用到段落的文本中。
- body {
- color: red;
- }
此时页面上所有标签都会继承body的字体颜色。然而CSS继承性的权重是非常低的,是比普通元素的权重还要低的0。
我们只要给对应的标签设置字体颜色就可覆盖掉它继承的样式。
- p {
- color: green;
- }
此外,继承是CSS重要的一部分,我们甚至不用去考虑它为什么能够这样,但CSS继承也是有限制的。有一些属性不能被继承,如:border, margin, padding, background等。
选择器的优先级
除此之外还可以通过添加 !import方式来强制让样式生效,但并不推荐使用。因为如果过多的使用!import会使样式文件混乱不易维护。
万不得已可以使用!import
前端之CSS选择器的更多相关文章
- 前端--关于css选择器
css选择器就好像表达式一样,返回一组或者一个html元素,后面的样式声明块应用到返回的元素上.所以可以把css选择器理解为某个或者某一类html元素的抽象的写法. 在讲具体的各种选择器之前要提一下选 ...
- 前端学习 -- Css -- 选择器的优先级
当使用不同的选择器,选中同一个元素时并且设置相同的样式时,这时样式之间产生了冲突,最终到底采用哪个选择器定义的样式,由选择器的优先级(权重)决定优先级高的优先显示. 优先级的规则 内联样式 , 优先级 ...
- 前端学习(十):CSS选择器
进击のpython ***** 前端学习--CSS选择器 每一条CSS样式声明由两部分组成: 选择器{ 样式: } 在CSS中{}之前的部分就是"选择器","选择器&qu ...
- 前端极易被误导的css选择器权重计算及css内联样式的妙用技巧
记得大学时候,专业课的网页设计书籍里面讲过css选择器权重的计算:id是100,class是10,html标签是5等等,然后全部加起来的和进行比较... 我只想说:真是误人子弟,害人不浅! 最近,在前 ...
- {前端CSS} 语法 Css的几种引入方式 css选择器 选择器的优先级 CSS属性相关 背景属性 边框 CSS盒子模型 清除浮动 overflow溢出属性 定位(position)z-index
前端CSS CSS介绍 CSS(Cascading Style Sheet,层叠样式表)定义如何显示HTML元素,给HTML设置样式,让它更加美观. 当浏览器读到一个样式表,它就会按照这个样式表来对文 ...
- 前端之CSS:CSS选择器
前端之css样式(选择器)... 一.css概述 CSS是Cascading Style Sheets的简称,中文称为层叠样式表,对html标签的渲染和布局 CSS 规则由两个主要的部分构成:选择器, ...
- 前端03 /css简绍/css选择器
前端03 /css简绍/css选择器 目录 前端03 /css简绍/css选择器 昨日内容回顾 html标签 常用标签 table标签:表格标签 input标签 select下拉框 textarea多 ...
- 2020年12月-第02阶段-前端基础-CSS基础选择器
CSS选择器(重点) 理解 能说出选择器的作用 id选择器和类选择器的区别 1. CSS选择器作用(重点) 如上图所以,要把里面的小黄人分为2组,最快的方法怎办? 很多, 比如 一只眼睛的一组,剩下的 ...
- 前端知识之CSS(1)-css语法、css选择器(属性、伪类、伪元素、分组与嵌套)、css组合器
目录 前端基础之css 1.关于css的介绍 2.css语法 3.三种编写CSS的方式 3.1.style内部直接编写css代码 3.2.link标签引入外部css文件 3.3.标签内直接书写 4.c ...
随机推荐
- oracle 11g dbms_workload_repository手工管理AWR快照,基线
1.修改快照设置[sql] view plain copysys@ORCL> select * from dba_hist_wr_control; DBID SNAP_INTERVAL RETE ...
- 关于如何让cell一直保持选中?
在M上 1.cell的展示,一直都是依靠数据源的支持.所以,必须要在数据源里面新增bool,默认为false 在V上 2.cell的setModel方法里面,将数据源的新增bool赋值为cell的是否 ...
- SSIS故障排除
1.2015.09.10 SSIS部署到SQL Server上 JOB任务无法执行 说是sa账户没有执行权限 解决办法:1)SQL Server 启动时使用windows管理员账户登录.2)部署的数据 ...
- LeetCode 744. Find Smallest Letter Greater Than Target (时间复杂度O(n))
题目 太简单了,直接上代码: class Solution { public: char nextGreatestLetter(vector<char>& letters, cha ...
- 如何防止js刷新页面后倒计时改变
1.存入cookie或localstorage(清除浏览器缓存后时间依然改变) 2.存入数据库
- .NET Framework 3.5 无法安装以下功能 安装错误:0x800F0906(客户端加域后出现)
问题:安装错误:0x800F0906 系统安装并加域后,在安装用友软件时提示没有.net 3.5 系统为win10 但是,点击确定后,却出现了这样的错误.如下: 点击下载并安装此功能,出现了这样 ...
- 史上最简单的在 Yii2.0 中将数据导出成 Excel
在 vendor/yiisoft/yii2/helpers/ 创建一个 Excel.php <?php namespace yii\helpers; class Excel{ ...
- luogu P2252 取石子游戏(威佐夫博弈)
题意 题解 对于像我这种不知道威佐夫博弈的人来说,拿到题就开始打表了. 然而打完后并没有发现什么. 然后才知道是威佐夫博弈. 结论是当(int)((b-a)*((sqrt(5.0)+1.0)/2.0) ...
- C语言实现简化的正则表达式
语法: 正则表达式和待匹配字符串都是一行 "^" 标记正则表达式的开始 "$" 标记正则表达式的结束 "*" 匹配前面的子表达式零次或多次 ...
- adb如何连接mumu模拟器并修改Android ID
adb工具下载安装 https://dl.google.com/android/repository/platform-tools-latest-windows.zip 参考:https://blog ...