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

CSS|04 复合选择器伪类选择器属性选择器美化超链接

基本选择器:见上篇基本选择器

		复合选择器选择器1,选择器2{属性:值;} 多元素选择器,同时匹配选择器1和选择器2,多个选择器之间用逗号分隔举例: p,h1,h2{margin:0px;}E F{属性:值;}  后代元素选择器,匹配所有属于E元素后代的F元素,E和F之间用空格分隔举例: #slidebar p {font-color: #990000;}E > F{属性:值;}子元素选择器,匹配所有E元素的子元素F举例: div > p{color:#990000;}E + F{属性:值;}相邻元素选择器,匹配所有紧随E元素之后的同级元素F举例: div + div{color:#990000;}伪类选择器伪类选择器是用来给超级链接的不同状态来设置样式。:link 向未被访问的链接添加样式 :visitied 向已被访问的链接添加样式:hover 当鼠标悬浮在元素上方时,向元素添加样式:active 鼠标放在元素上面时,点击的一瞬间注意:超级链接的不同状态它其实是有顺序。也就是说伪类选择器设置其实是有顺序。如果不按照伪类选择器的顺序,那么样式就会失效。顺序:要遵守“爱恨准则”要先有爱,才有恨。“Love Hate” LVHA属性选择器什么是属性选择器?属性选择器它是与标签的属性名和属性值有关。属性选择器是通过标签的属性名和属性值来匹配元素。选择器            含义                           举例[attr]           匹配指定的属性名的所有元素         h1[align]{}[attr="val"]     匹配属性等于指定值的所有元素       h1[align="center"]{}[attr*="val"]    匹配属性中包含指定值的所有元素      Font[color*="00"][attr$="val"]    匹配属性的值以指定值结束的所有元素   Font[color$="00"][attr^="val"]    匹配属性以指定值开头的所有元素      Font[color^="00"]

复合选择器

多元素选择器

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>多元素选择器</title><style type="text/css">/*多元素选择器格式:选择器1,选择器2,,选择器n{属性:值;}*//*div,p,h2,li{color: #f00;text-decoration: underline;  } */.box,p,h2,li{color: #f00;text-decoration: underline;  /*下划线*/}        </style>
</head>
<body><div class="box">HTML</div><p>CSS</p><h2>php</h2><ul><li>北京</li><li>广州</li><li>上海</li><li>深圳</li></ul></body>
</html>

在这里插入图片描述

后代元素选择器

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>后代元素选择器</title><style type="text/css">/*后代元素选择器格式:E F{属性:值;}作: 匹配.box这个盒子里面所有的h2后代*/.box h2{color: #f00;text-decoration: underline;}      </style>
</head>
<body><!-- class=box这个元素中有三个子元素第一个子元素:<h2>HTML</h2>第二个子元素:<div></div>还有子元素<h2>CSS</h2>第三个子元素:<h2>PHP</h2> --><div class="box"><h2>HTML</h2><div><h2>CSS</h2></div><h2>PHP</h2></div></body>
</html>

在这里插入图片描述

子元素选择器

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>子元素选择器</title><style type="text/css">/*子元素选择器格式:E > F{属性:值;}作: 匹配.box这个盒子里面所有的是h2的子元素,只匹配一级元素*/.box > h2{color: #f00;text-decoration: underline;}      </style>
</head>
<body><!-- class=box这个元素中有三个子元素第一个子元素:<h2>HTML</h2>第二个子元素:<div></div>还有子元素<h2>CSS</h2>第三个子元素:<h2>PHP</h2> --><div class="box"><h2>HTML</h2><div><h2>CSS</h2></div><h2>PHP</h2></div></body>
</html>

在这里插入图片描述

相邻元素选择器

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>相邻元素选择器</title><style type="text/css">/*相邻元素选择器格式:E + F{属性:值;}作用: 要满足一下前提才会匹配1. E元素和F元素必须是兄弟关系2. E元素和F元素必须紧挨着,之间没有任何元素阻挡3. 要求F元素一定是在E元素的下面 */.box + p{color: #f00;text-decoration: underline;}    
/*        p + .box{color: #f00;text-decoration: underline;} */   </style>
</head>
<body><!-- class=box这个元素中有三个子元素第一个子元素:<h2>HTML</h2>第二个子元素:<div></div>还有子元素<h2>CSS</h2>第三个子元素:<h2>PHP</h2> --><p>我在上面</p><div class="box"><h2>HTML</h2><div><h2>CSS</h2></div><h2>PHP</h2></div><p>我在下面</p></body>
</html>

在这里插入图片描述

伪类选择器

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>伪类选择器</title><style type="text/css">/*使用伪类选择器来给超级链接的不同状态来设置样式*/a:link{color: #f00; /*正常状态  红色 未被访问过*/}a:visited{color: #000; /*黑色 已经访问过*/}a:hover{color: gold;}a:active{color: #0f0; /*绿色*/}</style>
</head>
<body><a href="http://www.baidu.com">baidu</a><a href="http://www.133.com">133</a><a href="http://www.134.com">134</a></body>
</html>

在这里插入图片描述

属性选择器

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>属性选择器</title><style type="text/css">/*通过属性选择器来匹配元素*//*第一个:[属性名]*//*先匹配p标签,再找有align属性的*/
/*        p[align]{color: #f00;}*//*第二个:[属性名=值]*/
/*        [align = center]{color: #00f;}*//*第三个:[属性^=值]*//*有颜色属性的font标签的样式*/
/*        font[color]{border: 1px solid #00f;} */   /*有颜色属性值为#FF开头的font标签的样式*/
/*        font[color^="#FF"]{border: 1px solid #00f;} */ /*第四个:[属性$=值]*//*先找font标签,然后找color以00结尾的*/font[color$="00"]{border: 1px solid #00f;}/*第五个:[属性*=值]*//*先找font标签,再匹配color中含有aa的,不区分大小写*/font[color*="aa"]{border: 1px solid #00f;}       </style>
</head><body><p align="center">哈哈1</p><h2 align="center">哈哈2</h2><p align="left">哈哈3</p><font color="#FF0000">颜色</font><font color="#FFAA00">颜色</font><font color="#FFaa00">颜色</font><font color="#aacc00">颜色</font><font color="#FFaadd">颜色</font><font color="#ddaabb">颜色</font>
</body>
</html>

在这里插入图片描述

列表样式属性

这里的列表指的事:无序列表和有序列表
因为整个网页布局中无序列表使用最多。list-style-type:设置列表前项目符号的类型对应的值:none    将列表前面的项目符号去掉disc    实心圆square  实心小方块circle  空心圆
list-style-position:设置列表项标记的放置位置对应的值:inside  在里面outside 在外面
list-style-image:将图像设置为列表项标记对应的值:url   图像路径
list-style:在一个声明中设置所有列表的属性对应的值:squareinsideurllist-style,这个属性是一个简写属性,它集成上面上那个属性的功能。可以同时设置上面的三个属性。每一个属性值之前使用空格分隔!它的属性值可以有一个也可以有两个也可以三个。其属性值个数不定,位置也不定!
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>列表样式属性</title><style type="text/css">/*后代元素选择器*/.box ul{/*去除列表前面的项目符号*//*list-style-type: none; *//*实心方块*//*list-style-type: square;*//*空心圆*//*list-style-type: circle;*/}.box ul li{border: 1px solid #f00;height: 35px;line-height: 35px;/*list-style-position: inside;*//*第一步:将列表前面的项目符号去除*/
/*            list-style-type: none;将列表前面的符号换成一张图片list-style-image: url(../img/list-img.jpg);*/list-style: none url(../img/list-img.jpg);}</style></head>
<body><div class="box"><h2>中国四大名著</h2><ul><li>红楼梦</li><li>三国演义</li><li>水浒传</li><li>西游记</li></ul></div></body>
</html>

在这里插入图片描述
列表样式案例

<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>列表样式属性案例</title><style type="text/css">/*第一步:需要给div设置一个边距,并且这个div在浏览器上面是居中显示*/.box{width: 500px;border: 1px solid #f00;/*外边距:HTML中的表格标记属性 cellspacing单元格与单元格之间的距离在CSS中盒子与盒子之间的距离也称为外边距margin*/margin-left: auto; margin-right: auto;}.box h1{border: 1px solid skyblue;height: 40pxwidth: 40px;}.box li{/*color: #00f;*/list-style-type: none;list-style-image: url(../img/list-img.jpg);line-height: 30px;border: 1px solid #ccc;}</style>
</head>
<body><div class="box"><h1>频道推荐</h1><ul><li><a href="https://www.baidu.com/link?url=d9k7wwXsSM3GpAgfX296enlb_IfRmHqrNBIZv720wI2WdL_hXCPFUrgnjaMvt6Q31ljWo0gnwi-_nj40UB4unefkPy4Te-Fa3B0xyLZSIxy&wd=&eqid=e059485000084593000000046661f6db">胖东来董事长自曝患胃癌</a></li><li><a href="https://news.cyol.com/gb/articles/2024-06/06/content_Bb8x9VSlYQ.html">准备好了就去战斗吧!高考必胜</a></li><li><a href="https://baijiahao.baidu.com/s?id=1801120989685528101&wfr=spider&for=pc">2024高考作文预测</a></li><li><a href="https://baijiahao.baidu.com/s?id=1801092274605444416&wfr=spider&for=pc">餐厅倒闭老板留下6只企鹅跑路</a></li><li><a href="https://baijiahao.baidu.com/s?id=1801104923301331265">扫码可领3000元财政部补贴?假</a></li><li><a href="https://baijiahao.baidu.com/s?id=1801082241586470739&wfr=spider&for=pc">学校为高三学子准备定胜“糕粽”</a></li><li><a href="https://www.peopleapp.com/column/30045222587-500005470568">人民日报:国足平局难以接受</a></li><li><a href="https://quanmin.baidu.com/sv?source=share-h5&pd=qm_share_search&vid=3938713301581804879">高考期间最累的人其实是张韶涵</a></li></ul></div></body>
</html>

在这里插入图片描述

对超级链接进行美化

通常会去掉超级链接的下划线,同时给超级链接设置颜色。
一般情况下:
正常状态与访问过后的状态的样式设置为一致。
当鼠标经过时给其设置另外一种颜色。激活状态一般不设置,因为激活状态的时间太短。

举例:a:link,a:visited {去掉超级链接的下划线;设置一个颜色;}a:hover {设置另外一个颜色;增加一张下划线;}演示:
/*对超级链接进行美化*/
/*正常状态与访问过后的状态*/
a:link,a:visited {
text-decoration:none;color:#444;
}
/*鼠标放上状态*/
a:hover {
color: #fdle;
text-decoration: underline;
}
<!DOCTYPE html>
<html>
<head><meta charset="utf-8"><title>对超级链接进行美化</title><style type="text/css">/*对超链接进行美化*//*正常状态和访问过后的状态*/a:link,a:visited {/*去除下划线,设置颜色*/text-decoration: none;color: #444;}/*鼠标放上的状态*/a:hover{color: #f00;text-decoration: underline; /*加下划线*/}</style>
</head>
<body><div class="box"><h1>频道推荐</h1><ul><li><a href="https://www.baidu.com/link?url=d9k7wwXsSM3GpAgfX296enlb_IfRmHqrNBIZv720wI2WdL_hXCPFUrgnjaMvt6Q31ljWo0gnwi-_nj40UB4unefkPy4Te-Fa3B0xyLZSIxy&wd=&eqid=e059485000084593000000046661f6db">胖东来董事长自曝患胃癌</a></li><li><a href="https://news.cyol.com/gb/articles/2024-06/06/content_Bb8x9VSlYQ.html">准备好了就去战斗吧!高考必胜</a></li><li><a href="https://quanmin.baidu.com/sv?source=share-h5&pd=qm_share_search&vid=4582484021341585237">北大物理保送生考了唯一一门语文</a></li><li><a href="https://baijiahao.baidu.com/s?id=1801287722624806661&wfr=spider&for=pc">今年又帮李华了</a></li></ul></div></body>
</html>

在这里插入图片描述

相关文章:

CSS|04 复合选择器伪类选择器属性选择器美化超链接

基本选择器&#xff1a;见上篇基本选择器 复合选择器选择器1,选择器2{属性:值;} 多元素选择器&#xff0c;同时匹配选择器1和选择器2&#xff0c;多个选择器之间用逗号分隔举例&#xff1a; p,h1,h2{margin:0px;}E F{属性:值;} 后代元素选择器&#xff0c;匹配所有属于E元素后…...

探索Batch注释的奥秘:REM与::的细微差别

探索Batch注释的奥秘&#xff1a;REM与::的细微差别 在编写Batch文件时&#xff0c;注释是必不可少的部分&#xff0c;它们帮助我们理解代码的意图和逻辑。Batch脚本提供了两种添加注释的方法&#xff1a;REM命令和双冒号::。虽然它们功能相似&#xff0c;但在使用上存在一些细…...

C语言 求数列 S(n) = a + aa + aaa + …aa…a (n 个 a)的和

求数列S(n)aaaaaa…aa…a(n个a)之值&#xff0c;其中a是一个数字&#xff0c;n表示a的位数&#xff0c;n由键盘输入。例如222222222222222&#xff08;此时n5&#xff09; 这个程序读取用户输入的一个数字 a 和一个正整数 n&#xff0c;计算并输出数列 S(n) 的值。 #include …...

MysqlDump

介绍&#xff1a;mysqldump是一个常用的命令行工具&#xff0c;它用于备份或导出MySQL或MariaDB数据库中的数据。这个工具可以创建一个SQL文件&#xff0c;其中包含数据库的结构和数据&#xff0c;这样就可以在其他MySQL服务器上重新创建数据库或进行数据迁移。 基本语法&#…...

某安全公司DDoS攻击防御2024年6月报告

引言&#xff1a; 在2024年6月&#xff0c;网络空间的安全挑战汹涌澎湃。分布式拒绝服务&#xff08;DDoS&#xff09;攻击频发&#xff0c;针对云服务、金融科技及在线教育平台的精密打击凸显出当前网络威胁环境的严峻性。 某安全公司作为网络安全防护的中坚力量&#xff0c…...

Centos下rpm和yum执行卡住问题(已解决)

问题描述 执行rpm和yum卡住&#xff0c; 没有任何报错信息&#xff0c;且无法 ctrl c 终止&#xff0c;只能通过后台 kill -9 杀死。 问题排查&#xff1a; 查看yum日志&#xff1a;yum -vv 软件包 会发现卡在 loading keyring from rpmdb&#xff0c;即load DB存在问题。 …...

python自动化办公之PyPDF2.errors.DeprecationError

背景&#xff1a;pypdf2库在不断更新换代里面的类&#xff0c;逐渐淘汰一些旧的类 PyPDF2.errors.DeprecationError的意思是我们代码里用到的类计划被淘汰了&#xff0c;系统不推荐使用&#xff0c;解决办法&#xff1a;根据提示use xxx instead使用xxx 替换之前的类 例子1 P…...

[leetcode]first-unique-character-in-a-string 字符串中的第一个唯一字符

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:int firstUniqChar(string s) {unordered_map<int, int> frequency;for (char ch: s) {frequency[ch];}for (int i 0; i < s.size(); i) {if (frequency[s[i]] 1) {return i;}}return -1;} };...

使用uniapp.pageScrollTo方法进行页面滚动

先看看是不是你想要的&#xff1a; 需求&#xff1a; 有个填写数据的单子在提交的时候&#xff0c;会对必填项做校验&#xff0c;如果必填项没有数据的话&#xff0c;必填项校验生效给出提示&#xff0c;并且页面滚动到第一个需要填写数据的地方。 开发&#xff1a; 因为这个…...

寒武纪实现高维向量的softmax进阶优化和库函数对比

关于寒武纪编程可以参考本人之前的文章添加链接描述,添加链接描述,添加链接描述 实验证明,axis=0和axis=-1的时候,手写softmax速度可以和库函数媲美,甚至于更甚一筹。 src/softmax.mlu #include <bang.h> #include...

我的世界服务器-高版本服务器-MC服务器-生存服务器-RPG服务器-幻世星辰

生存为主&#xff0c;RPG乐趣为辅&#xff0c;重视每位玩家的建议&#xff0c;一起打造心目中的服务器&#xff0c;与小伙伴一起探险我的世界&#xff01; 服务器版本: 1.18.2 ~ 1.20.4 Q群&#xff1a; 338238381 服务器官网: 星辰毛毛雨-Minecraft高版本生存服务器我的世界…...

倒装COB显示屏与传统SMD显示屏安装方式有哪些不同?

COB显示屏与传统SMD显示屏是商业显示领域中非常重要的两种载体&#xff0c;在前面的文章当中我们为大家阐述了倒装COB显示屏的技术特点&#xff0c;今天跟随COB显示屏厂家深圳市中品瑞科技一起来看看&#xff0c;COB显示屏的安装与传统LED显示屏的安装有哪些不同&#xff1f; 一…...

elasticsearch重置密码

0 案例背景 Elasticsearch三台集群环境&#xff0c;对外端口为6200&#xff0c;忘记elasticsearch密码&#xff0c;进行重置操作 注&#xff1a;若无特殊说明&#xff0c;三台服务器均需进行处理操作 1 停止es /rpa/bin/elasticsearch.sh stop 检查状态 ps -ef|grep elast…...

微信小程序写一个可以滚动虚拟列表(瀑布流),减少dom渲染的优化,解决内存问题。

为什么要写这个&#xff1f; 因为在写小程序的时候首页功能比较多&#xff0c;造成渲染的dom有很多&#xff0c;一直setdata跳转到其他页面或者一直滑动就会卡顿&#xff0c;白屏。官方文档上那个不适用于瀑布流。官方文档 理解 刚开始在写这个的时候&#xff0c;就在想微信…...

人工与智能系统之间的交互方式

人工与智能系统之间的交互方式 #mermaid-svg-xSsFZWak2bsyV0un {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-xSsFZWak2bsyV0un .error-icon{fill:#552222;}#mermaid-svg-xSsFZWak2bsyV0un .error-text{fill:#5522…...

【运维】如何在Ubuntu中设置一个内存守护进程来确保内存不会溢出

文章目录 前言增加守护进程1. 编写监控脚本2. 创建 systemd 服务文件3. 启动并启用服务4. 验证服务是否运行注意事项 如何修改守护进程1. 修改监控脚本2. 重新加载并重启服务3. 验证服务是否运行总结 如何设置一个日志文件来查看信息1. 修改监控脚本以记录日志方法一&#xff1…...

调用基类的纯虚函数,如何知道纯虚函数会调用哪个派生类(子类)中的实现。

在 C 中&#xff0c;调用基类的纯虚函数实际上是通过运行时多态性来决定调用哪一个派生类的实现。这种机制是通过虚函数表&#xff08;vtable&#xff09;和虚函数指针&#xff08;vptr&#xff09;实现的。下面我们来详细探讨一下这个过程。 虚函数表和虚函数指针 虚函数表&a…...

塑造卓越企业家IP:多维度视角下的策略解析

在构建和塑造企业家IP的过程中&#xff0c;我们需要从多个维度进行考量&#xff0c;以确保个人品牌能够全面、立体地展现企业家的独特魅力和价值。以下是从不同角度探讨如何做好一个企业家IP的策略。 一、从个人特质出发 深入了解自我&#xff1a;企业家需要清晰地认识到自己的…...

Rust 跨平台-Android 和鸿蒙 OS

1. 安装 rustup rustup 是 Rust 的安装和版本管理工具 $ curl --proto https --tlsv1.2 https://sh.rustup.rs -sSf | sh 该命令会安装 rusup 和最新的稳定版本的 Rust&#xff1b;包括&#xff1a; rustc Rust 编译器&#xff0c;用于将 Rust 代码编译成可执行文件或库。 ca…...

Typora导出为Word

文章目录 一、场景二、安装1、网址2、解压并验证 三、配置四、重启Typora 一、场景 在使用Typora软件编辑文档时&#xff0c;我们可能需要将其导出为Word格式文件 当然我们可以直接在菜单里进行导出操作 文件-> 导出-> Word(.docx) 如果是第一次导出word文件&#xff0…...

浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)

✅ 一、ECS 服务配置 Dockerfile 确保监听 80 端口 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]或 EXPOSE 80 CMD ["python3", "-m", "http.server", "80"]任务定义&#xff08;Task Definition&…...

从WWDC看苹果产品发展的规律

WWDC 是苹果公司一年一度面向全球开发者的盛会&#xff0c;其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具&#xff0c;对过去十年 WWDC 主题演讲内容进行了系统化分析&#xff0c;形成了这份…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

Nginx server_name 配置说明

Nginx 是一个高性能的反向代理和负载均衡服务器&#xff0c;其核心配置之一是 server 块中的 server_name 指令。server_name 决定了 Nginx 如何根据客户端请求的 Host 头匹配对应的虚拟主机&#xff08;Virtual Host&#xff09;。 1. 简介 Nginx 使用 server_name 指令来确定…...

论文浅尝 | 基于判别指令微调生成式大语言模型的知识图谱补全方法(ISWC2024)

笔记整理&#xff1a;刘治强&#xff0c;浙江大学硕士生&#xff0c;研究方向为知识图谱表示学习&#xff0c;大语言模型 论文链接&#xff1a;http://arxiv.org/abs/2407.16127 发表会议&#xff1a;ISWC 2024 1. 动机 传统的知识图谱补全&#xff08;KGC&#xff09;模型通过…...

.Net Framework 4/C# 关键字(非常用,持续更新...)

一、is 关键字 is 关键字用于检查对象是否于给定类型兼容,如果兼容将返回 true,如果不兼容则返回 false,在进行类型转换前,可以先使用 is 关键字判断对象是否与指定类型兼容,如果兼容才进行转换,这样的转换是安全的。 例如有:首先创建一个字符串对象,然后将字符串对象隐…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...

【笔记】WSL 中 Rust 安装与测试完整记录

#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统&#xff1a;Ubuntu 24.04 LTS (WSL2)架构&#xff1a;x86_64 (GNU/Linux)Rust 版本&#xff1a;rustc 1.87.0 (2025-05-09)Cargo 版本&#xff1a;cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...

零知开源——STM32F103RBT6驱动 ICM20948 九轴传感器及 vofa + 上位机可视化教程

STM32F1 本教程使用零知标准板&#xff08;STM32F103RBT6&#xff09;通过I2C驱动ICM20948九轴传感器&#xff0c;实现姿态解算&#xff0c;并通过串口将数据实时发送至VOFA上位机进行3D可视化。代码基于开源库修改优化&#xff0c;适合嵌入式及物联网开发者。在基础驱动上新增…...