03-CSS基础选择器

3.1 CSS基础认知🍎

3.1.1 👁️‍🗨️CSS概念

CSS:层叠样式表(Cascading style sheets),为网页标签增加样式表现的

语法格式:

选择器{
	<!-- 属性设置 -->
	属性名:属性值;  <!--每一个键值对属性写完之后都要加 英文 `;`g隔开-->
}
比如:
p{
	color:red;
}

CSS常见属性

作用

color

文字颜色

background-color

背景颜色

background-image

背景图片

font-size

字体大小

width

宽度

height

高度

3.1.2 👣CSS的引入方式

1. 内嵌式

写在style标签,style标签一般在head中,title下面

    <style>
        /* 内嵌式 */
        p{
            /*属性设置==》 属性名:属性值  */
            color: red;
            /* 文字大小 */
            font-size: 50px;
            /* 背景颜色 */
            background-color: yellow;
            /* 宽度 高度 */
            /* width: 60px;
            height: 600px; */
        }
    </style>
<p>你好!世界!</p>

2. 外联式

写在一个单独的.css文件中,通过`link`标签进行导入

    <!-- link 标签 导入外联的css样式 -->
    <link rel="stylesheet" href="./css/01-css.css">
<div> 这是div标签-演示外联式CSS </div>

3. 内联式

直接写在标签的style属性中

<!-- 内联式:直接写在标签里面 -->
<span  style="color: springgreen; font-size: 90px;" >这是span标签-用来演示内联式</span>

3.2 基本选择器🌶️

3.2.1 🏀标签选择器

通过标签名去控制对应标签的样式

标签选择器是一次性控制整个页面对应的标签

语法:

标签名{
	属性:属性值
}
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        p{
            color: red;
            font-size: 20px;
        }

    </style>
</head>
<body>
    <!-- 演示标签选择器 -->
    <p>这是span标签-用来演示标签选择器</p>
    <p>p1 </p>
    <p>p2 </p>
    <p> p3</p>
    <p> p4</p>
    <div>
        <ol>
            <li>
                <p>这是嵌套的p标签</p>
            </li>
        </ol>
    </div>
</body>

3.2.2 🎉类选择器

通过类名,找到页面中所有带有这个类名的标签,设置样式

class="类名"

语法:

.类名{
  属性:值
}
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 类选择器 .类名 */
        .xzq03{
            color: aqua;
            font-size: 30px;
        }
        .p03{
            background-color: red;
        }

    </style>
</head>
<body>
    <p> 这是第一个p标签</p>
    <p class="xzq03"> 这是第二个p标签,有类名的p标签</p>
    <!-- 多个类名 -->
    <p class="xzq03 p03"> 这是第三个p标签,有类名的p标签</p>

    <span class="xzq03 span03">这是span标签</span>
    <div class="xzq03">这是div标签</div>
</body>

注意点:

  1. 所有标签上都有class属性,class属性的属性值称为类名(类似于名字)
  2. 类名可以由数字、字母、下划线、中划线组成,但不能以数字或者中划线开头
  3. 一个标签可以同时有多个类名,类名之间以空格隔开
  4. 类名可以重复,一个类选择器可以同时选中多个标签

3.2.3 🎿id选择器

通过id属性值,找到页面中带有这个id属性值的标签,设置样式

语法:

#id名{
  属性:值
}
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        #ix{
            font-size: 40px;
        }
        #sx{
            background-color: red;
        }
    </style>
</head>
<body>
    <p id="ix sx">这是p标签-测试id选择器</p>
    <p id="ix">这是p标签-测试id选择器</p>

    <span id="ix">这是span标签</span>
    <div id="ix">这是div</div>
</body>

3.2.4 🔮通配符选择器

以通配符“*”直接选择设置整个页面的标签

语法:

*{
  属性:值
}
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            color: red;
            font-size: 40px;
        }
    </style>
</head>
<body>
    <p>111</p>
    <p>222</p>
    <span>这是span</span>
    <div>这是div</div>
</body>

3.3 CSS样式层叠🍖

一个标签有多个相同的属性,比如:设置两个 color,最后就会覆盖第一个,一最后的样式为准

<!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>
        p{
            /* 后面的属性会覆盖掉前面的属性 */
            font-size: 60px;
            font-size: 20px;
            color: red;
            color: violet;
        }
    </style>
</head>
<body>
    <p>这是p标签</p>
</body>
</html>

3.4 字体和文本的基础样式🍊

3.4.1 🎯字体样式

  1. 字体大小:`font-size`

格式:

font-size:数值+px
  • 要跟px单位,不跟没有效果
  1. 字体粗细、倾斜:`font-weight`、`font-style`
<!DOCTYPE html>
<html lang="en">
<head>
    <style>
        p{
            color: red;
            /* 字体加粗 */
            font-weight: bold;
        }

        div{
            font-weight: 900;
            font-style: oblique;
        }
        span{
            font-weight: 100;
            font-style: italic;
        }
    </style>
</head>
<body>
    <p>这是p标签</p>
    <div>这是div标签</div>
    <span>这是span</span>
</body>
</html>
  1. 主体加粗

关键字:

  • 正常:normal
  • 加粗:bold

数值:

  • 100~900 (9个级别,依次递增)
  • 正常:400
  • 加粗:700
  1. 字体倾斜
  • 正常:normal(默认值)
  • 倾斜:italic
  1. 字体选择:`font-family`
<!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>
        p{
            /* font-family:微软雅黑,黑体,宋体; */
            font-family:Georgia, 'Times New Roman', Times, serif;
        }
    </style>
</head>
<body>
    <p>这是一个p标签</p>
    <div>这是div</div>
</body>
</html>

常见取值:具体字体1,具体字体2,具体字体3,具体字体4,...,

  • 具体字体:"Microsoft YaHei"、微软雅黑、黑体、宋体等……
  • 字体系列:sans-serif、serif、monospace等……

注意:

  1. 从左往右按照顺序查找
  2. 如果字体名称中存在多个单词,推荐使用引号包裹最后一项
  3. 尽量使用系统常见自带字体
  1. font连写

直接将字体系列的 font...属性写在一起

<!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>
        p{
            /* font-size: 40px;
            font-weight: 900;
            font-style: italic; */
            /* font 连写 */
            /* font : style weight size family;连写的顺序 */
            /* font连写:
                - 按照顺序写
                - 只能省略前两个属性(style、weight)
            */
            font: italic 900 90px 黑体 ;
            /* font: 900px 宋体; */
        }
    </style>
</head>
<body>
    <p>这是p标签</p>
</body>
</html>

注意:

  1. font连写时按照顺序写:`font : style weight size family;`
  2. font连写可以省略前2个属性(style、weight)

3.4.2 🏓文本样式

  1. 首先缩进:`text-indent`
  • 可以跟 数值px
  • 可以指定字:em(一个em 表示一个字大小)
  1. 对齐方式:`text-align`
  • 居中:center
  • 右对齐:right
  • 左对齐:left
  1. 文本修饰:`text-decoration`
  • underline:下划线
  • line-through:删除线
  • overline:上划线
  • none:去掉所有文本修饰
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>文本样式</title>
    <style>
        p{
            /* 首先缩进:text-indent
            px:像素值
            */
            /* text-indent: 40px; */
            text-indent: 2em;/*em:一个字*/

            /* 对齐:
                    居中:center 
                    右对齐:right
                    左对齐:left
            */
            text-align: left;
            
            /* 文本修饰:text-decoration
                underline:下划线
                line-through:删除线
                overline:上划线
                none:去掉所有文本修饰
            */
            text-decoration: underline;

        }
        div{
            text-decoration:line-through;
        }
        span{
            text-decoration: overline;
        }
        .p1{
            text-decoration: none;
        }

    </style>
</head>

<body>
    <p class="p1">前端开发是创建WEB页面或APP等前端界面呈现给用户的过程,通过HTML,CSS及JavaScript以及衍生出来的各种技术、框架、解决方案,
        来实现互联网产品的用户界面交互 。
    </p>

    <p>前端开发从网页制作演变而来,名称上有很明显的时代特征。在互联网的演化进程中,网页制作是Web1.0时代的产物,早期网站主要内容都是静态,
        以图片和文字为主,用户使用网站的行为也以浏览为主。随着互联网技术的发展和HTML5、CSS3的应用,现代网页更加美观,交互效果显著,
        功能更加强大。
    </p>

    <div>
        这是div标签
    </div>
    <br>
    <span>
        这是span
    </span>
</body>

</html>

3.4.3 🎗️行高

每一行字体所占的高度(`line-height`

行高取值:

  • 数值+px
  • em(一个em就表示一个字的大小)
  • font-size的倍数(一般情况下,浏览器默认字体大小是 16px)

可以font连写:font : style weight size/line-height family ;

<!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>
        /* 行高 */
        p{
            /* line-height: 30px; */
            /* line-height: 3em; */
            line-height: 4;/*谷歌默认16px */
        }   
    </style>
</head>
<body>
    <p>前端开发从网页制作演变而来,名称上有很明显的时代特征。在互联网的演化进程中,网页制作是Web1.0时代的产物,早期网站主要内容都是静态,
        以图片和文字为主,用户使用网站的行为也以浏览为主。随着互联网技术的发展和HTML5、CSS3的应用,现代网页更加美观,交互效果显著,
        功能更加强大。
    </p>
</body>
</html>

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

大模型架构创新已死?

金磊 白交 发自 凹非寺 量子位 | 公众号 QbitAI 一场围绕大模型自研和创新的讨论&#xff0c;这两天在技术圈里炸了锅。 起初&#xff0c;前阿里技术VP贾扬清&#xff0c;盆友圈爆料吐槽&#xff1a;有大厂新模型就是LLaMA架构&#xff0c;但为了表示不同&#xff0c;通过改变…

wx.canvasToTempFilePath生成图片保存到相册

微信小程序保存当前画布指定区域的内容导出生成指定大小的图片&#xff0c;记录一下 api&#xff1a;wx.canvasToTempFilePath 效果&#xff1a; 代码&#xff1a;wxml <canvas style"width: {{screenWidth}}px; height: {{canvasHeight}}px;" canvas-id"my…

AI绘画工具汇总

目前市面上的AI绘画工具十分繁杂&#xff0c;以下工具可供参考&#xff1a; 1. Midjourney 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; Midjourney&#xff1a;最主流的AI绘图工具之一&#xff0c;出图效果好&#xff0c;简单学习就可上手。需要在di…

webstorm基础配置

设置左侧菜单栏文字大小 开启鼠标滚轮控制文字大小 配置自定义注释 设置左侧菜单栏文字大小&#xff1a;file》settings》Appearance&Behavior》Appearance 开启鼠标滚轮控制主界面文字大小&#xff1a;file》settings》Editor》General 配置自定义注释&#xff1a;fi…

【星海出品】SDN neutron (五) openvswitch

1、ovs-vswitchd组件是交换机的主要模块&#xff0c;运行在用户态&#xff0c;其主要负责基本的转发逻辑、地址学习、外部物理端口绑定等。还可以运用OVS自带的ovs-ofctl工具采用openflow协议对交换机进行远程配置和管理。 2、ovsdb-server组件是存储OVS的网桥等配置、日志以及…

2013年10月23日 Go生态洞察:字符串、字节、符文和字符

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

正则匹配去除HTMl标签

正则匹配去除HTMl标签 案例&#xff1a;如在textarea中去除标签 操作方法 val.replace(/<[^>]>/g, ‘’))

【2015年数据结构真题】

用单链表保存m个整数&#xff0c;结点的结构为 [data] [link]&#xff0c;且|data|<n(n为正整数)。现要求设计一个时问复杂度尽可能高效的算法&#xff0c;对于链表中 data 的绝对值相等的结点&#xff0c;仅保留第一次出现的结点而删除其余绝对值相等的结点。例如&#xff…

ai语音电销机器人电销行业要怎么降低封号率?

工信部对电话营销电话的管控越来越严格&#xff0c;企业电销行业的发展受到了很多限制&#xff0c;因为电话销售人员在进行销售工作的时候&#xff0c;经常会因为各种原因触发封号机制&#xff0c;导致手机卡号被封&#xff0c;那企业电销行业要怎么降低封号率&#xff1f; 很多…

上门预约小程序开发app创业有哪些优势?

上门小程序app创业优势如下&#xff1a; 1. 无需租金&#xff0c;省下房租费用。由于采用技师上门服务&#xff0c;因此无需租用门店&#xff0c;为您节省了数十万的房租&#xff0c;省下来的就是赚的&#xff01; 2. 无需招聘全职技师和员工&#xff0c;省下工资。技师以兼职方…

vue中ref的用法

vue中ref的用法 在项目中使用ref时有时候直接取值,有时候返回的却是一个数组,不知其中缘由,后查了一下ref用法,所以总结一下. 1.绑定在dom元素上时&#xff0c;用起来与id差不多&#xff0c;通过this.$refs来调用: <div id"passCarEchart" ref"passCarEch…

如何在jupyter 上安装Office365-REST-Python-Client

最近工作需要写python代码从sharepoint 上定期load 数据写入到SQL server 中&#xff0c; 首先需要安装 office365 的python库&#xff08;python库名&#xff1a; Office365-REST-Python-Client&#xff09;但是直接安装失败了。 !pip install Office365-REST-Python-Client…

Java 等后端应用如何获取客户端真实IP —— 筑梦之路

需求说明 现有一套Java开发的应用&#xff0c;需要能获取到用户访问的真实IP地址&#xff0c;以此来过滤到一些不安全的因素。而实际部署的场景中Java服务提供给用户访问需要经过多次代理&#xff0c;默认情况下是无法获取到客户端真实IP地址的&#xff0c;因此要实现该需求&a…

mac下vue-cli从2.9.6升级到最新版本

由于mac之前安装了 vue 2.9.6 的版本&#xff0c;现在想升级到最新版本&#xff0c;用官方给的命令&#xff1a; npm uninstall vue-cli -g 发现不行。 1、究其原因&#xff1a;从vue-cli 3.0版本开始原来的npm install -g vue-cli 安装的都是旧版&#xff0c;最高到2.9.6。安…

游戏报错找不到xinput1_3.dll如何解决呢?分享5个解决方法对比

由于找不到xinput1_3.dll,无法继续执行代码的5个解决方法与丢失原因分享。 xinput1_3.dll是一个动态链接库文件&#xff0c;它包含了一些重要的函数和数据结构&#xff0c;用于支持游戏手柄等设备的操作。当这个文件丢失或损坏时&#xff0c;就会导致程序无法正常运行。 那么…

挂耳式运动耳机哪个品牌好?5款公认好用的运动耳机推荐

​在现代社会&#xff0c;耳机已经成为了人们生活中必不可少的数码设备。在运动的时候&#xff0c;佩戴耳机更是成为了很多人的标配。但是&#xff0c;市面上的运动耳机种类繁多&#xff0c;如何选择一款适合自己的呢&#xff1f;今天我为大家挑选了5款公认好用的运动耳机&…

普通测径仪升级的智能测径仪 增添11大实用功能!

普通测径仪能对各种钢材进行非接触式的外径及椭圆度在线检测&#xff0c;测量数据准确且无损&#xff0c;可测、监测、超差提示、系统分析等。在此基础上&#xff0c;为测径仪进行了进一步升级制成智能测径仪&#xff0c;为其增添更多智能化模块&#xff0c;让其使用更加方便。…

OpenAI 上线新功能力捧 RAG,开发者真的不需要向量数据库了?

近期&#xff0c; OpenAI 的开发者大会迅速成为各大媒体及开发者的热议焦点&#xff0c;有人甚至发出疑问“向量数据库是不是失宠了&#xff1f;” 这并非空穴来风。的确&#xff0c;OpenAI 在现场频频放出大招&#xff0c;宣布推出 GPT-4 Turbo 模型、全新 Assistants API 和一…

从HTTP到Tomcat:揭秘Web应用的底层协议与高性能容器

WEB服务器 1. HTTP协议1.1 HTTP-概述1.1.1 介绍1.2.2 特点 2.2 HTTP-请求协议2.3 HTTP-响应协议2.3.1 格式介绍2.3.2 响应状态码 2.4 HTTP-协议解析 2. WEB服务器-Tomcat2.1 简介2.1.1 服务器概述2.1.2 Web服务器2.1.3 Tomcat 2.2 基本使用2.2.1 下载2.2.2 安装与卸载2.2.3 启动…

JVM查看内存新生代老年代回收情况,排查oom

jstat 命令 jstat - [-t] [-h] [ []] option&#xff1a;我们经常使用的选项有gc、gcutil vmid&#xff1a;java进程id interval&#xff1a;间隔时间&#xff0c;单位为毫秒 count&#xff1a;打印次数 每秒打印一次 jstat -gc 9162 1000S0C:年轻代第一个survivor的容量…