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-indentpx:像素值*//* text-indent: 40px; */text-indent: 2em;/*em:一个字*//* 对齐:居中:center 右对齐:right左对齐:left*/text-align: left;/* 文本修饰:text-decorationunderline:下划线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>

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从0到0.01入门React | 004.精选 React 面试题

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…

《QT从基础到进阶·二十八》QProcess使用,从一个exe程序启动另一个exe程序

QString exePath QCoreApplication::applicationDirPath(); //获取要启动的另一个exe路径 exePath exePath “/OffLineProcess.exe”; //路径exe名称 QProcess* Process new QProcess; //创建新的进程 Process->start(exePath)…

Dart利用私有构造函数_()创建单例模式

文章目录 类的构造函数_()函数dart中构造函数定义 类的构造函数 类的构造函数有两种&#xff1a; 1&#xff09;默认构造函数&#xff1a; 当实例化对象的时候&#xff0c;会自动调用的函数&#xff0c;构造函数的名称和类的名称相同&#xff0c;在一个类中默认构造函数只能由…

Copliot:让你一秒变身网页达人的神奇助手

Copliot&#xff1a;一款能够帮助你快速理解网页内容的智能助手 你是否有过这样的经历&#xff0c;当你浏览网页时&#xff0c;遇到了一些你不太了解的内容&#xff0c;比如一些专业术语&#xff0c;一些复杂的概念&#xff0c;或者一些有趣的话题&#xff1f;你是否想要快速地…

代码随想录 Day44 动规12 LeetCode T300 最长递增子序列 T674 最长连续递增序列 T718 最长重复子数组

前言 本期我们来解决动规的经典题型------ 子数组问题 我们还是会使用动规五部曲来解决问题,下面我们仍然列出动规五部曲 1.明确dp数组含义 2.明确dp数组如何推导-递推公式 3.初始化dp数组 4.确定遍历顺序 5.打印dp数组排错 LeetCode T300 最长递增子序列 题目链接:300. 最长…

git分支管理以及不同git工作流对比

0、 单人开发场景 单人开发可能会出现的场景之一 如果多人协同开发我们则需要使用更加专业的工具Git&#xff08;分布式版本控制&#xff09; 1、多人协同工作使用git会出现什么问题? 代码冲突&#xff1a; 问题&#xff1a; 当多个开发者同时修改同一文件或同一行代码时…

SQL编写规范【干货】

编写本文档的目的是保证在开发过程中产出高效、格式统一、易阅读、易维护的SQL代码。 1 编写目 2 SQL书写规范 3 SQL编写原则 获取所有软件开发资料&#xff1a;点我获取

TikTok女性创作者:媒体世界的新领袖

在数字时代&#xff0c;社交媒体已成为媒体和娱乐产业的关键组成部分&#xff0c;而TikTok作为最受欢迎的短视频分享平台之一&#xff0c;为女性创作者提供了一个独特的机会来在媒体世界中崭露头角。 这个平台不仅为女性创作者提供了一个创作和分享自己的声音、观点和创意的空…

Vue3中使用provide和inject依赖注入完成父组件和孙子组件之间参数传递

Vue3中使用provide和inject依赖注入完成父组件和孙子组件之间参数传递 官网介绍 注意以下写法都是使用setup 代码结构 依赖注入-父组件 import { ref, provide } from "vue"const outDialogCardInfo ref() function updateOutDialogCardInfo(item) {console.log…

初认识vue,v-for,v-if,v-bind,v-model,v-html等指令

vue 一.vue3介绍 1.为什么data是函数而不是对象? 因为vue是组件开发,组件会多次复用,data如果是对象,多次复用是共享,必须函数返回一个新的对象 1. 官网初识 Vue (发音为 /vjuː/&#xff0c;类似 view) 是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS …

【中间件篇-Redis缓存数据库07】Redis缓存使用问题及互联网运用

Redis缓存使用问题 数据一致性 只要使用到缓存&#xff0c;无论是本地内存做缓存还是使用 redis 做缓存&#xff0c;那么就会存在数据同步的问题。 我以 Tomcat 向 MySQL 中写入和删改数据为例&#xff0c;来给你解释一下&#xff0c;数据的增删改操作具体是如何进行的。 我…

C# DirectoryInfo类的用法

在C#中&#xff0c;DirectoryInfo类是System.IO命名空间中的一个类&#xff0c;用于操作文件夹&#xff08;目录&#xff09;。通过DirectoryInfo类&#xff0c;我们可以方便地创建、删除、移动和枚举文件夹。本文将详细介绍DirectoryInfo类的常用方法和属性&#xff0c;并提供…

在搭建企业知识库时,这三个重要方面可不能忽略

随着信息时代的到来&#xff0c;企业面临着海量的信息和知识的挑战。为了更好地组织、管理和利用企业内部的知识资源&#xff0c;越来越多的企业开始搭建自己的知识库系统。 企业知识库是一个集中存储和管理知识、经验和信息的平台&#xff0c;它不仅可以提高企业的协作效率&a…

登上CMMLU性能评测榜单第一 四大维度解码夸克自研大模型

11月14日&#xff0c;拥有千亿参数的夸克自研大模型正式发布&#xff0c;立刻占据CMMLU榜单第一名。夸克大模型将应用于通用搜索、医疗健康、教育学习、职场办公等多个场景。性能方面&#xff0c;其整体水平已经超过GPT-3.5&#xff0c;其中在写作、考试等部分场景中可以超过GP…

C#多线程的操作

文章目录 1 使用线程意义2 C#线程开启的四种方式2.1 异步委托开启线程2.2 通过Thread类开启线程2.3 通过线程池开启线程2.4 通过任务Task开启线程 3 前台线程和后台线程简述3.1 前台线程3.2 后台线程 4 简述Thread和Task开启线程的区别4.1 Thread效果展示4.2 Task效果展示4.3 区…

ssm823基于ssm的心理预约咨询管理系统的设计与实现+vue

ssm823基于ssm的心理预约咨询管理系统的设计与实现vue 交流学习&#xff1a; 更多项目&#xff1a; 全网最全的Java成品项目列表 https://docs.qq.com/doc/DUXdsVlhIdVlsemdX 演示 项目功能演示&#xff1a; ————————————————

一本了解生成式人工智能

上周&#xff0c;发了一篇关于大语言模型图数据库技术相结合的文章&#xff0c;引起了很多朋友的兴趣。当然了&#xff0c;这项技术本身就让俺们很兴奋&#xff0c;比如我就是从事图研发的&#xff0c;当然会非常关注它在图领域的应用与相互促就啦。 纵观人类文明历史&#xff…

Postman+Newman+Jenkins实现接口测试持续集成

近期在复习Postman的基础知识&#xff0c;在小破站上跟着百里老师系统复习了一遍&#xff0c;也做了一些笔记&#xff0c;希望可以给大家一点点启发。 1.新建一个项目 2.设置自定义工作空间 3.执行windows的批处理命令 4.执行系统的Groovy脚本 5.生成的HTML的报告集成到Jenkin…

大模型的全面回顾,看透大模型 | A Comprehensive Overview of Large Language Models

大模型的全面回顾&#xff1a;A Comprehensive Overview of Large Language Models 返回论文和资料目录 论文地址 1.导读 相比今年4月的中国人民大学发表的大模型综述&#xff0c;这篇综述角度更侧重于大模型的实现&#xff0c;更加硬核&#xff0c;更适合深入了解大模型的一…

MongoDB分片集群搭建

----前言 mongodb分片 一般用得比较少&#xff0c;需要较多的服务器&#xff0c;还有三种的角色 一般把mongodb的副本集应用得好就足够用了&#xff0c;可搭建多套mongodb复本集 mongodb分片技术 mongodb副本集可以解决数据备份、读性能的问题&#xff0c;但由于mongodb副本集是…