CSS的选择器
后台-插件-广告管理-内容页头部广告(手机) |
CSS选择器用于“查找”(或选取)要设置的HTML。
可以将CSS选择器分为五类:
1.基本选择器
基本选择器又包含以下四种选择:
1.1标签选择器
根据标签的名称设置对应的样式
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- p{color: coral;}
- style>
- head>
- <body>
- <p>每个段落都会受影响p>
- <P>这个段落会P>
- <p>这个段落也会p>
- body>
- html>
运行效果:
1.2ID选择器
通过获取标签里面的ID属性去设置对应的样式,设置的时候#+id的属性值。
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- #one{color: coral;}
- style>
- head>
- <body>
- <p id="one">段落都会受影响p>
- <P>这个段落不会P>
- body>
- html>
运行效果:注意:id名称不能以数字开头。
1.3类选择器
通过获取标签里的class属性去设置对应的样式,设置的时候“.”+class的属性值。
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- .red{color: red;}
- style>
- head>
- <body>
- <h2 class="red">标题会变成红色h2>
- <P class="red">段落也会变成红色P>
- body>
- html>
运行效果:注意:类名不能以数字开头。
还可以指定只有特定的HTML元素会受类的影响。
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- h2.red{color: red;}
- style>
- head>
- <body>
- <h2 class="red">标题会变成红色h2>
- <P class="red">段落不会变成红色P>
- body>
运行效果:
HTML也可以引用多个类
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- .red{color: red;}
- .big{font-size: 20px;}
- style>
- head>
- <body>
- <p class="big">段落字号会变大p>
- <P class="red">段落会变成红色P>
- <P class="red big">段落会变成红色,而且字号会变大P>
- body>
运行效果:
1.4通配符选择器
通过*设置对应的样式
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- *{color:blue;}
- style>
- head>
- <body>
- <p>每一个都会受影响,变成蓝色h2>
- <div>div标签会变成蓝色div>
- <ul>
- <li>列表1,变成蓝色li>
- <li>列表2,变成蓝色li>
- <li>列表3,变成蓝色li>
- ul>
- body>
运行结果:
1.5四种选择器的优先级:
ID选择器>类选择器>标签选择器>通配符选择器
2.包含选择器
包含选择器又包含以下三个选择器:
2.1子代选择器
子代选择器获取的某个标签的第一级子标签,使用>(子选择符)
代码:
- <style>
- /* 子代选择器 */
- .list > ul{
- border: 1px solid saddlebrown;/*给列表添加一个边框*/
- }
- style>
- head>
- <body>
- <h1>这是一个标题h1>
- <p id="one">这是一个段落标签p>
- <div class="box">这又是一个divdiv>
- <div class="list">
- <ul>
- <li>这是列表1li>
- <li>这是列表2li>
- <li>这是列表3li>
- <li>这是列表4li>
- <li>这是列表5li>
- ul>
- <li>这是列表6li>
- <li>这是列表7li>
- <li>这是列表8li>
- <li>这是列表9li>
- div>
- body>
- html>
运行结果:
2.2后代选择器
获取的某个标签的所有子标签
代码
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>包含选择器title>
- <style>
- /* 后代选择器 */
- .list li{
- border: 1px solid brown;
- }
- style>
- head>
- <body>
- <h1>这是一个标题h1>
- <p id="one">这是一个段落标签p>
- <div class="box">这又是一个divdiv>
- <div class="list">
- <ul>
- <li>这是列表1li>
- <li>这是列表2li>
- <li>这是列表3li>
- <li>这是列表4li>
- <li>这是列表5li>
- ul>
- <li>这是列表6li>
- <li>这是列表7li>
- <li>这是列表8li>
- <li>这是列表9li>
- div>
- body>
运行结果:
可以看到,列表1---5的父级标签与列表6---9的父级标签不同,但它们的都是biv标签的后代标签。
2.3分组选择器
也叫做后代选择器,可以设定多个标签,使用逗号进行分割。
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>包含选择器title>
- <style>
- /* 分组选择器 */
- h1,#one,.box{
- color: blue;
- }
- style>
- head>
- <body>
- <h1>这是一个标题h1>
- <p id="one">这是一个段落标签p>
- <div class="box">这又是一个divdiv>
- <div class="list">
- <ul>
- <li>这是列表1li>
- <li>这是列表2li>
- <li>这是列表3li>
- <li>这是列表4li>
- <li>这是列表5li>
- ul>
- <li>这是列表6li>
- <li>这是列表7li>
- <li>这是列表8li>
- <li>这是列表9li>
- div>
- body>
运行结果:
3.属性选择器
属性选择器可以根据元素的属性及属性值来选择元素。
3.1可以选中某个标签中存在的某个值
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 选中某个标签存在的属性 */
- .container[class]{
- color: aqua;
- }
- div[title]{
- text-align: center;
- color: brown;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果:
3.2可以选择确切的某个值
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 确切的等于某个值 */
- input[type="password"]{
- background-color: burlywood;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果:
3.3可以选择属性里包含的某个值
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 属性里面包含某个值 */
- input[type *="e"]{
- background-color: coral;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果: 3.4选择属性中以xx开始的值
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 属性中的值以xxx开始 */
- input[type ^="e"]{
- background-color: darkgray;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果:
3.5选择属性中以xxx结尾的值
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 属性中的值以xxxx结束 */
- input[type $="rl"]{
- background-color: darkolivegreen;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果:
3.6选择下一个标签
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 表示下一个标签 */
- .msg + p{
- color: cadetblue;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果:
3.7选择属性具体的等于某个值
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>属性选择器title>
- <style>
- /* 属性等于某个值 */
- [class=msg]{
- color: salmon;
- }
- style>
- head>
- <body>
- <div class="container">这是一个divdiv>
- <div title="这是一个标题">这是第二个divdiv>
- <input type="text" value="张三">
- <input type="email" value="李四">
- <input type="url" value="王五">
- <input type="password" value="nicai">
- <hr>
- <div class="msg">我喜欢吃零食div>
- <p id="msg2">这是一个段落标签p>
- body>
运行结果:
4.伪类选择器
伪类用于定义元素的特殊状态。同一个标签,在不同的状态下有不同的样式。伪类是通过冒号来表示,最早的时候主要是用来渲染a标签不同的状态下的不同的样式。
比如,它可以用于:设置鼠标悬停在元素上的样式;为已访问和未访问链接设置不同的样式;设置元素获得焦点时的样式。
超链接点击之前-------:link
超链接被点击之后--------:visited
鼠标放在超链接上的时候(悬停)--------:hover
超链接激活的时候(鼠标点击但是不松手的时候)--------:active
代码:
- <style>
- /* 超链接点击之前是红色 */
- a:link{ color: brown; }
- /* 超链接点击之后是橙色 */
- a:visited{color: orange;}
- /* 鼠标悬停的时候的颜色是绿色 */
- a:hover{color: green;}
- /* 超链接被激活的时候是蓝色 */
- a:active{color: blue;}
- /* div:hover{color: blueviolet;} */
- style>
- head>
- <body>
- <a href="https://www.baidu.com/">点击我a>
- body>
注意:对于a标签的四种状态的顺序是一定的:a:link a:visited a:hover a:active。
5.伪元素选择器
伪元素用于设置元素指定部分的样式。
比如:它可以用于:设置元素的首字母,首行的样式;在元素的内容之前或之后插入内容。
:defore ------- css2 中 ::before ------- css3 中
:after -------- css2中 ::after -------- css3中
注意:使用before和after的时候一定要给写上content属性。
代码:
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>伪元素选择器title>
- <style>
- p{
- color: brown;
- font-size: 30px;
- }
- p::before{content:"张三说" ;color: chocolate;}
- p::after{content: "对不对";color: crimson;}
- style>
- head>
- <body>
- <p>这是一个段落p>
- body>
运行结果:
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。
在线投稿:投稿 站长QQ:1888636
后台-插件-广告管理-内容页尾部广告(手机) |