前端——高级选择器

news2024/11/19 5:39:53

1.属性选择器  

2.伪类选择器  

- hover  鼠标悬停状态

- active  鼠标点击状态

- focus   获取焦点状态  input使用

- checked 点击勾选状态   只能单选和多选使用  

示例1:

<!DOCTYPE html>
<html lang="en">

    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
            .box {
                float: left;
                width: 100px;
                height: 100px;
                background-color: red;
            }

            /* :hover 鼠标悬停到触发状态 发生改变 */
            .box:hover{
            width: 200px;
            height: 200px;
            background-color: green;
        }

            .wrap {
                float: left;
                width: 400px;
                height: 400px;
                background-color: pink;
                /* 元素消失 */
                display: none;
                /* margin-left: 100px; */
            }

            /* 我鼠标悬停到  box盒子  然后让我的同级元素盒子wrap显示出来   */
            .box:hover~.wrap {
                display: block;
            }

            /* 鼠标放到  wrap区域 显示出来  */
            .wrap:hover {
                display: block;
            }

            /* 点击状态  点击触发效果  */
            .text {
                width: 200px;
                height: 200px;
                background-color: red;
            }

            /* 点击状态触发伪类效果  */
            .text:active {
                background-color: orange;
                /* 圆 */
                border-radius: 50%;
            }

        </style>
    </head>

    <body>
        <div class="box">
            点我有惊喜
            
        </div>
        <div class="wrap">

        </div>
        <div class="text">

        </div>

    </body>

</html>

鼠标放上去效果左和点击效果右

c42a75053cac49fea0e0513163f9dbc1.png8d55bbfda6974f9d9dea5cd31476782b.png

示例2

<!DOCTYPE html>
<html lang="en">

    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
        <style>
          
            .box1 {
                width: 500px;
                height: 500px;
                border: 1px solid green;
            }

            .pic {
                display: none;
                width: 400px;
                height: 350px;
            }

            .rad1:checked~.pic {
                display: block;
            }


            .radbox {
                float: left;
                height: 500px;
                background: url(./1.jpg)no-repeat 0/cover;
                border: 1px solid #ccc;
            }

            .radio {
                width: 100px;
                height: 500px;
                /* 透明度 */
                opacity: 0;
            }

            .radio:checked {
                width: 1000px;
                height: 500px;
            }

           
        </style>
    </head>

    <body>

        <div class="box1">
             <input type="radio" class='rad1'>
             点一下圈圈,有惊喜哦
             <img src="./1.jpg" alt="" class='pic'>
        </div>

    </body>

</html>

未触发选择器前(左)触发后(右)

232307dc40404b5f98a270ad81fbc672.png097b01cadb0843d2a2494351ecadb0cd.png

3.结构选择器  

- 子元素选择器  通过父级去找子级   (满足是父子关系)

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* :nth-child 子元素选择器   通过父级结构去找 子级添加样式   */
        /* 需求: 135 是红色      246 是绿色 */

        /* 奇数  odd   2n-1 */
        .list>li:nth-child(2n-1){
            color: red;
        }


        /* 偶数   even  2n */
        .list>li:nth-child(even){
            color: green;
        }


        /* 选择第一个子元素 */
        .list>li:first-child{
            color: skyblue;
        }

        /* 选择最后一个 */
        .list>li:last-child{
            color: purple;
        }
    </style>
</head>
<body>
    <ul class="list">
        <li>第1个li子元素</li>
        <li>第2个li子元素</li>
        <li>第3个li子元素</li>
        <li>第4个li子元素</li>
        <li>第5个li子元素</li>
        <li>第6个li子元素</li>
    </ul>
  
</body>
</html>

效果:504510f38cac4fec8943ba211db3a79f.png

- 同类别选择器  兄弟选择器  

示例

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>

        /* nth-of-type: 同类别选择器   无视其它元素的影响   */
        /* 奇数 */
        .box>p:nth-of-type(odd){
            color: orange;
        }

        /* 偶数 */
        .box>p:nth-of-type(even){
            color: brown;
        }

        /* 选择第一个兄弟 */
        .box>p:first-of-type{
            color: pink;
        }

       /* 选择最后一个兄弟元素 */
        .box>p:last-of-type{
            color: purple;
        }
    </style>
</head>
<body>
      <div class="box">
         <p>英雄联盟</p>
         <b>我的世界</b>
         <p>原神</p>
         <span>俄罗斯方块</span>
         <p>魔兽</p>
         <p>逆水寒</p>
         <span>永劫无间</span>
      </div>
</body>
</html>

效果:50bfff3ad857461a8cb7bf3121ba510e.png

4.伪元素选择器

示例

<style>

        /* 用伪元素 在内容前面插入 */

        .box::before{

            /* 伪元素必备 开启的一把key  钥匙 */

            content: '老师说:';

 

            float: left;

            width: 100px;

            height: 100px;

            background-color: green;

            color: red;

            display: none;

        }

 

        /* 伪元素可以被伪类选择器选中 */

        .box:hover:before{

           display: block;

        }

 

        /* 用伪元素 在内容后面插入 */

        .box::after{

            /* 伪元素内容 */

          content: '以后都要认认真真搞学习了';

          color: pink;

        }

    </style>

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2162044.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

linux网络编程7

24.9.24学习目录 一.网络通信过程&#xff08;续&#xff09;1.路由器 二.原始套接字&#xff08;SOCK_RAW&#xff09;1.创建原始套接字2.数据包解析 一.网络通信过程&#xff08;续&#xff09; 1.路由器 路由器是用于连接多个逻辑上分开的网络&#xff1b; 具有判断网络地…

Krita连接comfyui报错缺少节点如何解决

介绍一下我用的版本&#xff1a; krita5.2.3 ComfyUI-aki-v1.3 首先&#xff1a;文件夹必须严格按照ComfyUI进行命名&#xff0c;我不知道这个是不是必须得&#xff0c;但是看官方的文档以及我解决这个问题的过程时&#xff0c;是这样的。 报错信息如下图(这个报错图…

EasyCVR全方位安全守护智慧电厂:构建高效视频监控系统优势分析

随着信息技术的飞速发展和数字化时代的到来&#xff0c;电厂作为能源供应的重要枢纽&#xff0c;其安全性和管理效率成为社会各界关注的焦点。为了满足电厂对高效、智能、可靠视频监控系统的需求&#xff0c;基于EasyCVR平台建设的电厂视频监控系统应运而生。 一、系统构成 基…

110Redis 简明教程--Redis 数据类型

Redis strings 字符串是一种最基本、最常用的 Redis 值类型。 Redis 字符串是二进制安全的&#xff0c;这意味着一个 Redis 字符串能包含任意类型的数据&#xff0c;例如&#xff1a; 一张经过 base64 编码的图片或者一个序列化的 Ruby 对象。通过这样的方式&#xff0c;Redis …

MybatisPlus: Can‘t generate mapping method with primitive return type

今天启动 SpringBoot 项目时&#xff0c;报了如下错误&#xff1a;java: Cant generate mapping method with primitive return type. 这个异常是因为引入的Mapper有问题&#xff0c;解决&#xff1a; // 错误的引入 import org.mapstruct.Mapper;// 正确的引入 import org.ap…

今日指数项目之大盘指数功能实现

1、国内大盘指数功能 1.1国内大盘指数业务分析 1.1.1 页面原型效果 查询A股大盘最新的数据&#xff1a; 国内大盘数据包含&#xff1a;大盘代码、大盘名称、开盘点、最新点、前收盘点、交易量、交易金额、涨跌值、涨幅、振幅、当前日期 1.1.2 相关表结构分析 大盘指数包含国…

sprintf()函数的介绍及其用法

目录 前言 一&#xff1a;sprintf&#xff08;&#xff09;函数的介绍 二&#xff1a;sprintf&#xff08;&#xff09;函数的原型 三&#xff1a;sprintf&#xff08;&#xff09;函数的用法 1.控制输出格式 2.将数字转化成字符串 3.拼接字符串 4.当然&#xff0c;也可…

Q必达任务脚本

文章目录 1.购买服务器地址2.部署教程3. 代码如下4. 如何联系我 1.购买服务器地址 服务器购买地址 https://t.aliyun.com/U/rUHk58 若失效&#xff0c;可用地址 https://www.aliyun.com/activity/wuying/dj?source5176.29345612&userCode49hts92d 2.部署教程 2024年最…

从零开始构建后台管理系统列表:新手友好教程,全程使用 HTML+CSS+JavaScript,涵盖增删查改、导入导出、排序等功能(含完整源码)

b站视频演示效果&#xff1a; 效果图&#xff1a; 完整代码&#xff1a; <!DOCTYPE html> <html> <head><meta charset"utf-8"><title>后台管理系统</title><!-- 引入正确的 Vue.js 版本 --><script src"https:/…

鸿蒙 OS 开发零基础快速入门教程

视频课程: 东西比较多, 这里主要分享一些代码和案例. 开关灯效果案例: 开灯 开关灯效果案例: 关灯 Column 和 Row 的基本用法 Entry Component struct Index {State message: string 张三;build() {// 一行内容Row() {// 一列内容Column() {// 文本内容Text(this.mess…

27 C 语言标准库 <stdio.h> 中的两个重要字符串函数:sprintf、sscanf

目录 1 sprintf 1.1 函数原型 1.2 功能说明 1.3 案例演示 1.4 注意事项 2 sscanf 2.1 函数原型 2.2 功能说明 2.3 案例演示 2.4 注意事项 1 sprintf 1.1 函数原型 sprintf 函数是 C 语言标准库中的一个函数&#xff0c;用于将格式化的数据写入字符串。其函数原型定义…

9.24作业

将昨天的My_string类中的所有能重载的运算符全部进行重载 、[] 、>、<、、>、<、! 、&#xff08;可以加等一个字符串&#xff0c;也可以加等一个字符&#xff09;、输入输出(<< 、 >>) 代码如下 MyString.h #ifndef MYSTRING_H #define MYSTRING_…

使用Docker和cpolar在Linux服务器上搭建DashDot监控面板

使用Docker和cpolar在Linux服务器上搭建DashDot监控面板 前言环境准备安装Docker下载Dashdot镜像 部署DashDot应用本地访问DashDot服务安装cpolar内网穿透固定DashDot公网地址结语 前言 在这个数字化飞速发展的时代&#xff0c;服务器作为支撑各种应用和服务的基础设施&#xf…

C++类和对象(中)【下篇】

&#x1f31f;个人主页&#xff1a;落叶 &#x1f31f;当前专栏: C专栏 目录 赋值运算符重载 运算符重载 赋值运算符重载 日期类实现 运算符重载<和运算符重载 运算符重载进行复用 运算符重载< 运算符重载> 运算符重载> 运算符重载! 获取某年某月的天数…

大模型算法岗常见面试题100道(值得收藏)非常详细收藏我这一篇就够了

大模型应该是目前当之无愧的最有影响力的AI技术&#xff0c;它正在革新各个行业&#xff0c;包括自然语言处理、机器翻译、内容创作和客户服务等等&#xff0c;正在成为未来商业环境的重要组成部分。 截至目前大模型已经超过200个&#xff0c;在大模型纵横的时代&#xff0c;不…

在Markdown中实现内部查询

markdown实现内部查询 在想要跳转到的位置添加 <a idxxx></a> 标签&#xff0c;如下图&#xff1a; 然后按如下格式添加目录 [跳转文字](#id)&#xff1a; 如上操作即可实现markdown内部查询。 具体实现效果如下&#xff1a;

八大排序——万字长文带你剖析八大排序(C语言)

本篇文章主要介绍八大排序的思想和具体实现&#xff0c;也会分析具体的时间复杂度和空间复杂度&#xff0c;提醒一些容易出现的坑和实现一些不同版本的排序&#xff0c;以及这些不同排序之间的效率分析 目录 1.插入排序 1.1直接插入排序 1.1.1 直接插入排序的思想&#xff…

PyTorch模型转ONNX量化模型

你是否发现模型太大&#xff0c;无法部署在你想要的云服务上&#xff1f;或者你是否发现 TensorFlow 和 PyTorch 等框架对于你的云服务来说太臃肿了&#xff1f;ONNX Runtime 可能是你的救星。 如果你的模型在 PyTorch 中&#xff0c;你可以轻松地在 Python 中将其转换为 ONNX…

关于YOLOX的一些优势

YOLOX 是旷视开源的高性能检测器。旷视的研究者将解耦头、数据增强、无锚点以及标签分类等目 标检测领域的优秀进展与 YOLO 进行了巧妙的集成组合&#xff0c;提出了 YOLOX&#xff0c;不仅实现了超越 YOLOv3、 YOLOv4 和 YOLOv5 的 AP&#xff0c;而且取得了极具竞争力的推理速…