web前端 --- CSS(1)

news2024/10/6 12:21:19

CSS(Cascade Style Sheet) --- 级联样式表(1)

<head>
	<style>
		选择器{
			属性名:属性值;
			属性名:属性值;
		}
	</style>
</head>

属性名:修饰对象的属性(样式)
属性值:样式的取值

1、书写CSS

  • 行内样式:【不推荐使用】
  • 页面样式:(内联样式)
  • 外联样式:【推荐使用】

例:

<!DOCTYPE html>
<html lang="en">
<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>css书写样式</title>

    <style>
        @import url();/* 在html中也可写入import,只不过外部必须添加style标签 */
    </style>

    <!-- 使用link标签,引入需要的css文件 -->
    <link rel="stylesheet" href="css/a.css">
    <!-- rel不可省略,类名必须为stylesheet,表示引入的为层叠样式表。href:路径 -->

</head>
<body>
    <div style="color:red;font-size: 20px;">这是一个div</div>
    <!-- 行内样式,优先级高,绑在标签上一般无法被覆盖。优点:该标签独一无二;缺点:批量修改较为麻烦 -->
    <!-- style:当前标签的样式. -->
    <div>1</div>
    <div>2</div>
    <div>3</div>
    <div>4</div>
    <div>5</div>

</body>
</html>

2、CSS选择器

(1)基本选择器

  • id选择器:通过标签的id名称来选择标签  (# id)
  • 类选择器:class选择器,选择一个类别  (.classname)
  • 标签选择器:tagname直接选择标签
  • 逗号选择器:复合选择器
  • 通配符(*)选择器:匹配所有标签

例:

<!DOCTYPE html>
<html lang="en">
<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>css的基本选择器</title>
    <style>
        *{
            /* 通配符选择器(*):匹配所有标签 */
            margin: 0;
            padding: 0;
            /* 向左无空格。适合通用设置,不适合独立设置 */
        }
        #box{
            width: 200px;
            height: 100px;
            border: 1px solid rgb(237, 20, 20);
        }
        .msg{
            width: 100px;
            height: 50px;
            border: 2px solid blue;
        }
        .msg-2{
            border: 3px solid rebeccapurple;
        }
        ul,ol{
            list-style: none;
        }
    </style>
</head>
<body>
    <h1>id选择器</h1>
    <div id="box"></div>
    <!-- 有时id不可复用,所以一般不可重复添加id,id一般适合页面中独一无二的,例如:搜索框 -->

    <h1>类选择器</h1>
    <div class="msg"></div>
    <div class="msg"></div>
    <div class="msg msg-2"></div>
    <!-- css是少数允许用中划线命名的技术(驼峰法) -->
    <div class="msg"></div>
    <!-- 类选择器:class选择器。允许重复;允许出现多个 -->

    <h1>标签选择器,逗号选择器</h1>
    <ul>
        <li>国内新闻1</li>
        <li>国内新闻2</li>
        <li>国内新闻3</li>
        <li>国内新闻4</li>
        <li>国内新闻5</li>
    </ul>

    <ol>
        <li>国外新闻1</li>
        <li>国外新闻2</li>
        <li>国外新闻3</li>
        <li>国外新闻4</li>
        <li>国外新闻5</li>
    </ol>

</body>
</html>

(2)包含选择器:

  • 子代选择器:(>)父子关系
  • 后代选择器:(空格)后代所有
<!DOCTYPE html>
<html lang="en">
<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>
    <link rel="stylesheet" href="css/reset.css">
    <style>
        ul.news{
            /* 选择其中的ul */
            border: 1px solid red;
            width: 200px;
            min-height: 50px;
        }
        ul.news>li{
            /* 子代选择器 */
            height: 50px;
            width: 200px;
            border: 1px solid red;
        }
        ul.news li{
            /* 后代选择器 */
            height: 50px;
            width: 200px;
            border: 1px solid red;
        }
    </style>
</head>
<body>
    <ul class="news">
        <li>列表1</li>
        <li>列表2</li>
        <li>列表3</li>
        <li>列表4</li>
        <ul>
            <li>wishing1</li>
            <li>wishing2</li>
            <li>wishing3</li>
        </ul>
    </ul>
    <!-- 一般常见复合元素出现在类选择器和复合选择器中。 -->
    <div class="news"></div>
</body>

</html>
@charset "utf-8";
html {
  background-color: #fff;
  color: #000;
  font-size: 12px
}

body, ul, ol, dl, dd, h1, h2, h3, h4, h5, h6, figure, form, fieldset, legend, input, textarea, button, p, blockquote, th, td, pre, xmp {
  margin: 0;
  padding: 0
}

body, input, textarea, button, select, pre, xmp, tt, code, kbd, samp {
  line-height: 1.5;
  font-family: tahoma, arial, "Hiragino Sans GB", simsun, sans-serif
}

h1, h2, h3, h4, h5, h6, small, big, input, textarea, button, select {
  font-size: 100%
}

h1, h2, h3, h4, h5, h6 {
  font-family: tahoma, arial, "Hiragino Sans GB", "微软雅黑", simsun, sans-serif
}

h1, h2, h3, h4, h5, h6, b, strong {
  font-weight: normal
}

address, cite, dfn, em, i, optgroup, var {
  font-style: normal
}

table {
  border-collapse: collapse;
  border-spacing: 0;
  text-align: left
}

caption, th {
  text-align: inherit
}

ul, ol, menu {
  list-style: none
}

fieldset, img {
  border: 0
}

img, object, input, textarea, button, select {
  vertical-align: middle
}

article, aside, footer, header, section, nav, figure, figcaption, hgroup, details, menu {
  display: block
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1
}

blockquote:before, blockquote:after, q:before, q:after {
  content: "\0020"
}

textarea {
  overflow: auto;
  resize: vertical
}

input, textarea, button, select, a {
  outline: 0 none;
  border: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  padding: 0;
  border: 0
}

mark {
  background-color: transparent
}

a, ins, s, u, del {
  text-decoration: none
}

sup, sub {
  vertical-align: baseline
}

html {
  overflow-x: hidden;
  height: 100%;
  font-size: 50px;
  -webkit-tap-highlight-color: transparent;
}

body {
  font-family: Arial, "Microsoft Yahei", "Helvetica Neue", Helvetica, sans-serif;
  color: #333;
  font-size: .28em;
  line-height: 1;
  -webkit-text-size-adjust: none;
}

hr {
  height: .02rem;
  margin: .1rem 0;
  border: medium none;
  border-top: .02rem solid #cacaca;
}

a {
  color: #25a4bb;
  text-decoration: none;
}

(3)属性选择器:根据元素的属性以及属性值来选择元素

书写方式:

  • []
  • [属性]
  • [属性=“xxx”]
  • [属性*="xxx"]
  • [属性^="xxx"]
  • [属性$="xxx"]
  • ......

例:

<!DOCTYPE html>
<html lang="en">
<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>css属性选择器</title>
    <style>
        /* [title]{
            color: red;
        } */
        /* div [title]{
            color: red;
        } 
        仅筛选出含div标签的title属性
        */
        /* div[title=" this is a title"]{
            color: #FF0000;
        } 
        筛选出中title在div标签中为指定内容的标签
        */

        /* 前三个用的较多 */

        /* div[title^="12"]{
            color: aqua;
        } 
        筛选出title属性在div标签中以指定内容开头的标签
        */
        /* div[title$=67]{
            color: chocolate;
        }
        筛选出title属性在div标签中以指定内容结尾的标签 
        */

    </style>
</head>
<body>
    <div title=" this is a title">123456</div>
    <div title="1234567">123456</div>
    <div>123456</div>
    <div>123456</div>
    <div id="box">123456</div>

    <p title>有title</p>
    <p>无title</p>
</body>
</html>

(4)伪类选择器:添加选择器的特殊效果

(最先出现是为了装饰a标签诞生的)

  • anchor伪类
a:link {color:#FF0000;} /* 未访问的链接样式 */
a:visited {color:#00FF00;} /* 已访问的链接样式 */
a:hover {color:#FF00FF;} /* 鼠标划过链接样式 */
a:active {color:#0000FF;} /* 已选中的链接样式 */

例:

<!DOCTYPE html>
<html lang="en">
<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>
        .content{
            color:red;
        }
        a:link{
            color: aqua;
            text-decoration: none;
            /* 默认显示 */
        }
        a:hover{
            color: mediumaquamarine;
            text-decoration: underline;
            font-size: 21px;/* 不建议 */
            /* 光标移动到字符的显示 */
        }
        a:active{
            color: green;
            /* 光标点击字符未松开 */
        }
        a:visited{
            color: blueviolet;
            /* 光标点击字符后的显示 */
        }

        input:focus{
            background-color: brown;
        }

    </style>
</head>
<body>
    <div class="content">
        <p>AzureC2Relay:AzureC2Relay是一个Azure功能,它通过基于Cobalt Strike</p>
        <p>AzureC2Relay:AzureC2Relay是一个Azure功能,它通过基于Cobalt Strike</p>
        <p>AzureC2Relay:AzureC2Relay是一个Azure功能,它通过基于Cobalt Strike</p>
        <a href="#">链接1</a>
        <a href="#">链接2</a>
        <a href="#">链接3</a>
        <!-- a标签不会继承父类的样式,需单独设置样式 -->

    </div>

    <input type="text" name="" id="">

</body>
</html>

(5)兄弟选择器:+和~

  • +选择器:如果需要选择紧接在另一个元素后的元素,而且二者有相同的父元素,可以使用相邻兄弟选择器
  • ~选择器:查找某一个指定元素的后面的所有兄弟结点。
<!DOCTYPE html>
<html lang="en">
<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>
    <link rel="stylesheet" href="css/d.css">
</head>
<body>
    <h1>+选择器</h1>
    <div>
        <p>1234567</p>
        <p class="box">1234567</p>
        <!-- <div>1234567</div> -->
        <p>1234567</p>
        <p>1234567</p>
    </div>

    <h1>~选择器</h1>
    <div>
        <P>567890</P>
        <P class="bax">567890</P>
        <P>567890</P>
        <P>567890</P>
    </div>
</body>
</html>
p.box{
    color: saddlebrown;
}
.box + p{
    color: crimson;
    /* +表示与下一个p标签,当下一个是别的标签时,无法选中 */
}
.bax ~ p{
    color: darkmagenta;
    /* 表示.bax后面所有所有p标签都被选中 */
}

(6)伪元素选择器:(::)

伪元素选择器可以帮助我们利用CSS创建新标签元素,而不需要HTML标签,从而简化HTML结构。

例1:

<!DOCTYPE html>
<html lang="en">
<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::first-letter{
            text-transform: uppercase;
        }
        p::first-line{
            color: brown;
        }
        ul.news>li:first-child{
            color: red;
            /* 第一个子元素,若第一个元素的类型不是li,则无法选中*/
        }
        ul.news>li:last-child{
            color: aqua;
        }
        ul.news>li:first-of-type{
            color: blueviolet;
            /* 第一个类型为li的子元素 */
        }
        .new>li:nth-child(1){
            color: #423232;
        }

        ::placeholder{
            color: coral;
        }
        /* :root{
            选择文档的根元素,默认为根标签。与html{}等价
        } */
        ::selection{
            /* 用于已选取的颜色部分 */
            color: mediumaquamarine;
        }
    </style>
</head>
<body>
    <p>this is a book
        <ul class="news">
            <p>第一个子元素</p>
            <li>12345</li>
            <li>12345</li>
            <li>12345</li>
            <li>12345</li>
        </ul>
    </p>

    <p>Cobalt Strike是一款超级好用的渗透测试工具,拥有多种协议主机上线方式,集成了提权,凭据导出,端口转发,socket代理,office攻击,文件捆绑,钓鱼等多种功能。同时,Cobalt Strike还可以调用Mimikatz等其他知名工具,因此广受技术大佬的喜爱。</p>

    <p>
        <input type="text" placeholder="输入用户名称" id="">
    </p>

    <p>
        <textarea placeholder="请输入建议或意见" id="" cols="30" rows="10"></textarea>
    </p>
</body>
</html>

例2:

<!DOCTYPE html>
<html lang="en">
<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>     
    <link rel="stylesheet" href="css/e.css">
</head>
<body>
    <div class="box"></div>
    <div></div>
    <div></div>
</body>
</html>
.box{
    width: 100px;
    height: 200px;
    border: 1px solid red;
}
.box::before{
    content: "1"; 
    /* 将行元素变成块元素 */
    display: block;/* block:块元素。inline:行内元素 */
    height: 200px;
    width: 50px;
    background-color: aqua;
    float: left;

    border-radius: 50%;
    /* 圆 */
}
.box::after{
    display: block;
    content: '2';
    background-color: blue;
    height: 200px;
    width: 50px;
    float: left;
    border-radius: 50%;
}

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

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

相关文章

docker ——安装tomcat

环境&#xff1a;centos7 安装tomcat 第一步&#xff1a;联网 第二步&#xff1a;开启docker systemctl start docker 第三步&#xff1a;拉取镜像 docker pull tomcat //下载tomcat镜像 docker pull tomcat 第四步&#xff1a;创建容器 docker run -d …

Solr之查询页面,索引,SolrJ

文章目录 1 Solr查询1.1 查询页面1.1.1 基本查询1.1.2 Solr检索运算符1.1.3 高亮1.1.4 分组1.1.4.1 分组&#xff08;Field Facet&#xff09;1.1.4.2 分组&#xff08;Date Facet&#xff09; 1.2 创建索引文件1.2.1 使用Post上传文件1.2.1.1 Linux下使用1.2.1.1.1 索引XML1.2…

BDCC- 数据湖体系

文章目录 数据湖的概念数据湖 vs 数据仓库 vs Lakehouse① 业界进展&#xff08;Databricks 2.0&#xff09;-湖上建仓② 业界进展&#xff08;Snowflake EDW 2.0&#xff09;-仓外挂湖 LakeHouse 的演进&#xff08;1&#xff09;Lakehouse 的演进路线&#xff08;2&#xff0…

基于matlab的长短期神经网络LSTM的电力负荷预测

目录 背影 摘要 LSTM的基本定义 LSTM实现的步骤 基于长短期神经网络LSTM的电力负荷预测 MATALB代码 效果图 结果分析 展望 参考论文 背影 电力负荷预测的实质是从已知的电力系统&#xff0c;经济&#xff0c;社会&#xff0c;气象等情况出发&#xff0c;根据历史负荷变化规律…

CSDN 周赛 48 期

CSDN 周赛 48 期 工作日参赛1、题目名称&#xff1a;最后一位2、题目名称&#xff1a;天然气订单3、题目名称&#xff1a;排查网络故障4、题目名称&#xff1a;运输石油小结 工作日参赛 说实话&#xff0c;今天是周末&#xff0c;但是今天也是工作日&#xff0c;老顾已经预计到…

Tossim 教程

系列文章目录 TinyOS 系列文章【一】&#xff1a;TinyOS 配置教程 TinyOS 系列文章【二】&#xff1a;Tossim 教程 文章目录 系列文章目录前言1. Tossim 简介2. TOSSIM 仿真2.1. 编译 TOSSIM2.2. 基于 Python 的仿真2.3. 调试语句2.4. 网络配置 总结 前言 本文主要用于记录在…

打破广播电视行业前端摄录设备依赖进口局面,BOSMA博冠全新国产8K摄像机重新定义广播世界

《世界广播电视》杂志曾经预测&#xff0c;2025年全球将有1000个超高清频道在播出。中国广电总局提出&#xff0c;到2025年底&#xff0c;标清频道基本关停&#xff0c;省级电视台要基本具备超高清电视制播能力。视频超高清已成为一个国际趋势。中国有14亿人口&#xff0c;是全…

蓝牙设备节点协议栈基础知识

蓝牙设备节点协议栈基础知识 一&#xff1a;TTY&#xff08;虚拟控制台&#xff0c;串口以及伪终端设备组成的终端设备&#xff09; Android/Linux 几乎所有的外设都以”设备节点”的形式存在 例如PC插入串口,会识别成COM1/COM2…在linux下面则以/dev/ttyXXX的形式存在,如/dev…

国家信息安全水平考试中NISP一级网络安全证书介绍

1、什么是NISP? 国家信息安全水平考试&#xff08;National Information Security Test Program&#xff0c;简称NISP&#xff09;&#xff0c;是由中国信息安全测评中心实施培养国家网络空间安全人才的项目。 2、考取NISP一级认证的同学就业岗位和薪资标准有那些呢&#xf…

Docker创建镜像,建立网桥,容器制作虚拟机

新建基础镜像&#xff0c;希望能够SSH&#xff0c;安装java&#xff0c;用户&#xff0c;声明22端口等等&#xff1b;拷贝基础hadoop安装文件 新建Dockerfile FROM centos:7.9.2009RUN rm -f /etc/localtime && ln -sv /usr/share/zoneinfo/Asia/Shanghai /etc/local…

【C++】Windows使用Visual Studio C++链接云数据库PostgreSQL(沉浸式老爷教学)

Windows使用C Visual Studio链接云数据库PostgreSQL 一、前置条件二、安装PostgreSQL工具三、编译libpqxx库四、Visual Studio配置测试**如果对您有帮助&#xff0c;关注收藏&#xff01;** 关注 “测试开发自动化” 公众号&#xff0c;获取更多学习内容 一、前置条件 下载lib…

MQTT 开放基准测试规范:全面评估你的 MQTT Broker 性能

引言 我们很高兴地宣布&#xff1a;由 EMQ 提供的 MQTT 开放基准测试规范现已正式发布&#xff01; 该测试规范包含了实用的典型使用场景、一套衡量 Broker 性能的主要指标&#xff0c;以及一个模拟负载和收集测试结果的工具&#xff0c;可以帮助开发者评估 MQTT Broker 的可…

让同为2.4G的ZigBee与Wi-Fi相容的解决方案解析

2.4G (WIFI,BT,ZIGBEE,普通2.4G 无线) 4种2.4G 无线通信协议。 普通2.4G 无线 最便宜。 众所周知&#xff0c;小米的智能套装包含的4件套&#xff0c;人体传感器、门窗传感器、无线开关与多功能网关采用的是基于NXP的一颗工业级ZigBee射频芯片–JN5168进行组网通讯。而多功能网…

office实操技能01:修改微软Office页面的(非背景的)浅绿底色、设置默认字体和主题颜色、取消页眉横线、PPT默认的等线字体

目录 1 处理word中默认中文字体是等线的问题 2 处理word中没有设置背景色&#xff0c;但页面底色是浅绿色的问题 3 修改office的主题颜色 4 删除页眉横线 5 处理PPT中的等线字体 这篇博文主要介绍两个使用技能&#xff1a; 技能1&#xff1a;修改word的默认等线字体技能2&…

( “树” 之 BST) 653. 两数之和 IV - 输入二叉搜索树 ——【Leetcode每日一题】

二叉查找树&#xff08;BST&#xff09;&#xff1a;根节点大于等于左子树所有节点&#xff0c;小于等于右子树所有节点。 二叉查找树中序遍历有序。 653. 两数之和 IV - 输入二叉搜索树 难度&#xff1a;简单 给定一个二叉搜索树 root 和一个目标结果 k&#xff0c;如果二叉…

关于Java注解的一些理解 小结

目录 1. 常用注解和理解 2. 自定义注解 2.1 案例背景 2.2 设计思路 3 总结 1. 常用注解和理解 注解在我的理解下&#xff0c;就是代码中的特殊标记&#xff0c;这些标记可以在编译、类加载、运行时被读取&#xff0c;并执行相对应的处理。 可能有些抽象&#xff0c;简单…

Web3中文|好莱坞新星如何成就电影业?

Web3 技术已经被用于电影行业&#xff0c;以建立社区并将利基内容代币化。NFT 将是好莱坞的下一个新星。 【利基&#xff08;niche&#xff09;是指针对企业的优势细分出来的市场&#xff0c;这个市场不大&#xff0c;而且没有得到令人满意的服务。产品推进这个市场&#xff0c…

DATAFAKER 使用方法记录

DATAFAKER 使用方法记录 win10 64位 Python 3.10.11 参考网址 datafaker的使用–详细教程 https://blog.csdn.net/A15517340610/article/details/105623103 https://github.com/gangly/datafaker python 版本 It is compatible with python2.7 and python3.4 也就是说 他…

开箱即用的ChatGPT替代模型,还可训练自己数据

一、普遍关注是什么&#xff1f; OpenAI 是第一个在该领域取得重大进展的公司&#xff0c;并且使围绕其服务构建抽象变得更加容易。然而&#xff0c;便利性带来了集中化、通过中介的成本、数据隐私和版权问题。 而数据主权和治理是这些新的LLM服务提供商如何处理商业秘密或敏…

Vue(数据绑定、el和data多种写法、理解MVVM、数据代理)

一、数据绑定 1. vue中有两种数据绑定&#xff08;通过开发者工具进行查看&#xff09; 1. 单项绑定&#xff08;v-bind&#xff09;数据只能从data流向页面 在输入框中中输入vue实例中的数据没有变化 2. 双向绑定&#xff08;v-model&#xff09;数据能从data流向页面&#x…