CSS 样式的使用方式、选择器
在html中使用css的三种方式:
1、行内样式:同过元素的style属性来设置
<p style="font-size:20px; color:red">hello</p>
属性之间分号隔开。
2、内部样式:在<head>的<style>元素中定义css样式
<style>
p{font-size: 20px;color: red}
</style>
3、外部样式:在css文件中定义css样式,然后在html的<head>中通过<style>引入外部样式表
p{font-size: 20px;color: red}
<link href="xxx.css" type="text/css" rel="stylesheet" />
css文件中不加<style>标签,直接写css样式就ok。
内部|外部样式的语法: 选择器 {属性名1:属性值1; 属性名2:属性值2}
三种方式,属性之间都是分号隔开。
css注释:
/* 注释 */
css选择器
1、元素选择器、类选择器、id选择器
p{color: red} /* 元素选择器,给所有p元素设置样式*/
.red{color: red} /* 类选择器,在元素中通过class="red"引用 */
#user{color: red} /* id选择器,在元素中通过id="user"引用,最多只能使用1次 */
2、通用选择器、分组选择器
*{color: red} /*通用选择器,给所有元素设置样式 */
h1,.red{color: red} /*分组选择器,同时给多个选择器设置相同的样式 */
3、后代选择器、子选择器、相邻兄弟选择器、后续兄弟选择器
div p{color: red} /*后代选择器,选择<div>中所有的<p>元素,不管<p>是<div>的儿子、孙子、重孙......只要<p>是<div>的后代就行*/
div>p{color:red} /*子选择器,选择的是<p>,<p>必须是<div>的儿子*/
div+p{color:red} /*相邻兄弟选择器,选择的是<p>,<p>必须是<div>后面的第一个兄弟元素 */
div~p{color:red} /*后续兄弟选择器,选择<div>后面所有的<p>,<p>必须是<div>的兄弟元素 */
4、属性选择器
[attr] /*含有attr属性*/ [attr=value] /*有attr属性,且属性值为value*/ [attr^=value] /*有attr属性,且属性值以value开头(只要value是开头就ok*/
[attr|=value] /*有attr属性,且属性值以value开头、value和后面部分以-连接 */ [attr$=value] /*有attr属性,且属性值以value结尾*/ [attr*=value] /*有attr属性,且属性值中含有value(含有就ok)*/
[attr~=value] /*有attr属性,且属性值中含有单词value,value要是一个完整的单词(和其它单词以空格隔开)*/
属性选择器常和其它选择器一起使用,比如:
button[type="button"] /*选择所有type="button"的<button> */
属性选择器中,attr不能加引号,value可引可不引。
5、<a>链接
a:link /*所有未访问过的<a>*元素/
a:hover /*鼠标移到<a>元素上*/
a:active /*点击<a>时*/
a:visited /*所有访问过的<a>*/
这4个设置的是<a>元素不同时期的样式。
:hover这个伪类所有元素都可以使用。
6、表单元素
:focus /*聚焦时*/
:checked /*选中时*/
:enabled /*可用的*/
:disabled /*禁用的*/
:read-only /*只读*/
可单独使用,也可配合表单元素使用:
:focus{ }
input:focus{ }
7、空元素
:empty{ } /*所有的空元素*/
p:empty{ } /*所有空的<p>元素*/
空元素指的是没有任何属性、没有内容的元素,示例:<p></p>。
8、非
:not(p) /*选择不是<p>的所有元素*/
()中尽量只使用元素选择器,使用其他选择器容易出错。
9、type系列
p:first-of-type /*同级别中的第一个<p>*/
p:nth-of-type(n) /*同级别中的第n个<p>*/
p:nth-last-of-type(n) /*同级别中的倒数第n个<p>*/
p:last-of-type /*同级别中的最后一个<p>*/
p:only-of-type /*同级别中唯一的一个<p>*/
示例:
p:first-of-type{color:red}
<body>
<h1></h1>
<p></p> <!--选中-->
<p></p>
<div>
<h2></h2>
<p></p> <!--选中-->
<p></p>
</div>
</body>
只要是同级别的<p>中的第一个即可。
10、child系列
p:first-child /*匹配的是<p>,<p>要是其父元素的第一个子元素*/
p:nth-child(n) /*匹配的是<p>,<p>要是其父元素的第n个子元素*/
p:nth-last-child(n) /*匹配的是<p>,<p>要是其父元素的倒数第n个子元素*/
p:last-child /*匹配的是<p>,<p>要是其父元素的最后一个子元素*/
p:only-child /*匹配的是<p>,<p>要是其父元素的唯一一个子元素*/
示例:
p:first-child{color:red}
<body>
<h1></h1>
<p></p>
<p></p>
<div>
<p></p> <!--选中-->
<p></p>
</div>
</body>
11、首字、首行
p:first-letter /*<p>元素的第一个字符*/
p:first-line /*<p>元素的第一行*/
12、:before :after
p:before{ /*在<p>的前面添加内容*/
content:"hello "
}
p:after{ /*在<p>的后面添加内容*/
content:" byebye"
}
添加的内容默认是行内元素,但会和<p>在同一行显示(相当于把添加的内容放到<p>元素内的最前|后面),添加的并不是一个真正的元素,所以叫做伪元素。
可以设置为块级,添加的内容会作为块级元素显示:
p:before{ /*在<p>的前面添加内容*/
content:"hello ";
display: block
}
p:after{ /*在<p>的后面添加内容*/
content:" byebye";
display: block
}
可以给添加的元素设置样式:
p:before{
content:"hello "; /* 属性之间分号分隔 */
display: block; /*给添加的内容设置样式*/
font-size: 20px;
color:red
}
添加图片:
p:before{
content:""; /* content属性是必需的,不添加文本时可以设置为空串 */
display: block; /*必须要设置为块级,要设置宽、高,添加的背景图片才能显示出来*/
width: 100px;
height: 100px
background-image: url("1.png");
}
清除浮动:
p:before{
content:"";
clear: both
}
伪元素可以使用单冒号,也可以使用双冒号。
:before <=> ::before
:after <=> ::after
带冒号的选择器中,有4个伪元素:first-letter、:first-line、:before、:after,其余都是伪类。
选择器可以搭配使用。
在同种方式中(都是内部|外部样式),优先级id选择器最高,类选择器次之,属性选择器最低。(定位越具体、详细的,优先级越高)
如果使用了相同的css属性,优先级行内最高,内部、外部优先级相同,看<head>中<link />、<style>的顺序,后面的优先级更高(后渲染的样式会覆盖之前的样式)。
CSS 样式的使用方式、选择器的更多相关文章
- 【3-24】css样式表分类、选择器、样式属性
一.css样式表分类: (一)内联样式表:代码写在标签内的样式表 控制精确 代码重用性差 优先级最高 格式:<p style="样式属性">内容</p> ...
- css——样式表分类,选择器
一,样式表分类 (1)内联样式[优先级最高][常用][代码重复使用性最差] (当特殊的样式需要应用到个别元素时,就可以使用内联样式. 使用内联样式的方法是在相关的标签中使用样式属性.样式属性可以包含任 ...
- CSS样式之连接方式
前言:上一篇博客是HTML基本结构和标签,是笔者学习HTML的笔记,本篇博客开始记录CSS,废话不多说,直接进入主题. 首先,我们要知道CSS是什么.简单地说,CSS层叠样式表是用来表现HTML或XM ...
- 四种CSS样式的引入方式
准备 1.首先准备一个html文件:test.html,不建议使用记事本创建文件,建议使用Notepad++来创建并编辑文件,注意编码格式为:以UTF-8无BOM格式编码,否则会出现中文乱码,内容如下 ...
- CSS样式的插入方式
1.外部样式: 当样式需要应用于很多页面时,外部样式表将是理想的选择.<head> <link rel="stylesheet" type="text/ ...
- JS设置CSS样式的集中方式
1. 直接设置style的属性 某些情况用这个设置 !important值无效 如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保留 - 号,就中括号的形式 element. ...
- css样式表分类、选择器分类、css基础样式
1 . 样式表 Cascading Style Sheet css优势: 内容与表现分离 网页的表现统一,容易修改 丰富的样式,使网页布局更加灵活 减少网页代码量,增加网页的浏览速度,节省 ...
- CSS样式表引用方式
最近讲课中,有些学员对调用样式表老是有含糊不清?大体说来有四种方式: 1.外部文件引用方式;(推荐使用) 2.使用@import引用外部CSS文件; 3.内部文档头方式也叫内嵌法调用; 4.直接插入式 ...
- 前端开发---css样式的使用方式
css使用方式: 1.内联样式表: <body style="background-color:green" margin:0 ; padding:0;> 2.嵌入式样 ...
随机推荐
- vmtools的功能
1.vmtoools是vmware公司的组件 2.vmtools主要安装在Guest OS中 3.在workstation版本中可以是选件安装,但在vsphere中却是必选安装 4.vmtools可以 ...
- pytest--运行指定的测试和参数化
mark pytest提供了标记机制,允许你使用marker对测试函数做标记,一个测试函数可以有多个marker,一个marker也可以用来标记多个测试函数 比如我们需要进行冒烟测试,不可能把所有的用 ...
- day 17
Our life is frittered away by detail, simplify it, simplify it. 我们的生活都被琐事浪费掉了,简单点,简单点.
- spark基础知识二
主要围绕spark的底层核心抽象RDD进行理解.主要包括以下几个方面 RDD弹性分布式数据集的概念 RDD弹性分布式数据集的五大属性 RDD弹性分布式数据集的算子操作分类 RDD弹性分布式数据集的算子 ...
- Codeforces Round 564 题解
很抱歉让标题把您骗进来了. 这是一场打得最失败的div1. 作为一个橙名一题都不会…… 旁边紫名的PB怒切3题,div2的也随便玩玩出了div1b/div2d…… 这名字颜色也太有水分了. 也就只会2 ...
- ZROI 暑期高端峰会 A班 Day4 生成函数
一般生成函数 很普及组,不讲了 生成函数是一种形式幂级数,也就是我们只关心系数,不关心未知数具体的值. 比如 \(\sum\limits_{i\ge 0}x^i=\frac{1}{1-x}\).虽然只 ...
- shell中使用expect命令进行远程执行命令脚本
expect是用来实现自动交互功能的工具之一,使用expect-send来实现交互过程. 注意: 1.脚本的执行方法与bash shell不一样,比如:expect example.sh 2.向一个脚 ...
- node.js HTTP模块、URL 模块
在浏览器输入存在的网址的一个交互过程 1.用户通过浏览器发送一个http的请求到指定的主机 2.服务器接收到该请求,对该请求进行分析和处理 3.服务器处理完成以后,返回对应的数据到用户机器 4.浏览器 ...
- Shiro框架详解 tagline
之间工作中曾经用到过shiro这个权限控制的框架,之前一直都是停留在用的方面,没有过多的 去理解这方面的知识,现在有时间,专门研究了一下这个Shiro权限的框架使用. Shiro是什么? ...
- .NET 微服务 2 架构设计理论(一)
SOA体系架构 面向服务的体系结构 (SOA) ,通过将应用程序分解为多个服务(通常为 HTTP 服务,WCF服务等),将其分为不同类型(例如子系统或层),从而来划分应用程序的结构. 微服务源自 SO ...