CSS的简单了解

news2025/2/25 1:04:20

目录

1、什么是CSS?

2、引入方式

(1、内部样式

(2、内联样式

(3、外部样式

3、选择器

4、CSS常用元素属性

(1、文本属性

(2、文本格式

(3、背景属性

(4、生成圆角矩形与圆

5、盒子模型:

元素类型的补充

6、弹性布局



1、什么是CSS?

层叠样式表 (Cascading Style Sheets).
        CSS 能够对网页中元素位置的排版进行像素级精确控制 , 实现美化页面的效果. 能够做到页面
的样式和结构分离.



2、引入方式

(1、内部样式

写在style标签中,嵌入到HTML内部,一般都是放在在head标签中

优点 : 这样做能够让样式和页面结构分离 .
缺点 : 分离的还不够彻底 . 尤其是 css 内容多的时候 .

(2、内联样式

通过 style 属性 , 来指定某个标签的样式 .
只适合于写简单样式 . 只针对某个标签生效 .
缺点 : 不能写太复杂的样式 .
这种写法优先级较高 , 会覆盖其他的样式 .
例如:
<style>
    div {
        color: red;
   }
</style>
<div style="color:green">慢一点,你很好的</div>

注:这里,输出的文字颜色是绿色

(3、外部样式

实际开发中最常用的方式 .
1. 创建一个 css 文件 .
2. 使用 link 标签引入 css
<link rel="stylesheet" href="[CSS文件路径]">
优点 : 样式和结构彻底分离了 .
缺点 : 受到浏览器缓存影响 , 修改之后 不一定 立刻生效 .



3、选择器

        像上面我们使用内部或外部样式引用CSS代码时,那个大括号前面带的一个标签名就是一个选择器,这种选择器顾名思义,就叫做标签选择器。针对选择的这个标签,一个html里面所有带此标签的代码都会生效。

选择的标签 {
    CSS属性;
}

CSS的选择器包括两类,一类是基础选择器,另一类是复合选择器

基础选择器又包括标签选择器,类选择器,id选择器,通配符选择器等。
复合选择器包括后代选择器、子选择器、并集选择器、伪类选择器等。

  •         类选择器可以随心所欲地选择想要的元素,前提得先为标签添加class属性,选择时需要使用.+class属性值来进行元素的选择。
.class属性值 {
    CSS属性;
}

举例:

    <style>
        .blog1 {
            color: green;
        }
    </style>
    <span class="blog1">类选择器</span>

 效果:

 

  •         id选择器,可以根据标签的id属性来找到对应的元素,同一页面中id属性不能重复。
#id名 {
    CSS属性
}

 举例:

    <style>
        #color1 {
            color: brown;
        }
    </style>
    <div id="color1">id选择器</div>

效果:

 

  •         通配符选择器,直接使用*来直接选择页面上所有的元素。
*{
	CSS属性;
}

举例:

     <style>
        * {
            /* 字体大小 */
            font-size: 20px;
            /* 字体颜色 */
            color: rgb(249, 1, 1);
            /* 背景颜色 */
            background-color: rgb(235, 141, 113);
        }
    </style>
    <h1>标题</h1>
    <p>段落</p>
    <div>猜猜我有多大</div>

效果:

  •         后代选择器,可以通过基础选择器组合找到某一元素的子元素或更后代的元素。
/*选择器中间必须有空格*/
选择器1 选择器2{
	属性;
}

 

举例:

 

  •          子选择器,能够选择某个元素中的子元素,子元素后代元素不能被选择,这是和后代选择器的区别。
选择器1>选择器2{
	CSS属性;
}
  •         并集选择器,其实就是同时选择多个类型的元素。 
选择器1,选择器2,...{
	CSS属性;
}
  •         伪类选择器,就是当遇到不同的事件时,有不同的格式反应,也就是添加一些过渡的样式,这方面JS做得更加丰富一点,比如鼠标触碰文字是一种样式,不触碰是另外的一种样式。

如:
hover 选择鼠标指针悬停上的元素
active 选择鼠标按下了但是未弹起的元素 

hover 

 



4、CSS常用元素属性

(1、文本属性

  •  color,表示字体颜色,可以使用常用颜色的英文或使用rgb或rgba(比rgb多一维透明度)比例调色,十六进制也可以表示rgb的颜色。
  • font-size,表示字体大小,常用单位为px。
  • font-family,表示字体格式,比如宋体,楷体等。
  • font-weight,表示字体粗细,可以使用数字和常用英文单词设置。
  • font-style,表示字体样式,如倾斜,值为italic表示设置倾斜,值为normal表示取消倾斜,多用于取消倾斜。
  • text-align,表示文本对齐,left左对齐,right右对齐,center居中对齐。
  • text-decoration,表示文本装饰,可以设置和取消下划线或删除线,值为un表示取消下划线和删除线,underline表示下划线,line-through表示删除线,overline上划线。

        对于字体的颜色标注,可以使用颜色的英文单词来表示,但是颜色种类受限,除了这个方案,我们更常用的是使用rgb色光三原色(红 绿 黄)来调制各种各样的颜色,理论上颜色种类是无限的,使用方法是设置color属性的值为rgb(红色比例(0-255),绿色比例(0-255),黄色比例(0-255))比如红色就是rgb(255,0,0),或者使用十六进制来表示,每4位表示一种颜色的比例,比如红色格式为#ff0000,可以缩写成#f00。

文本属性

 

(2、文本格式

常用文本格式属性如下:

        text-indent,表示段落缩进,单位为px或em,em表示自适应字符数,具体大小取决于文字大小,比如如果文字大小为16px,则1em=16px,文字大小为8px,则1em=8px,当text-indent为正值为正向缩进(向右边缩进),为负值为反向缩进(向左边缩进)。
        line-height,行高就是文本顶线与顶线的距离,或者是中线到中线的距离,或者是底线到底线的距离,对上下两个方向有影响,并且相同,如果两行有不同的行高,实际行高值为两个行高值中最大的一个值,如果行高与元素高度相同,表示垂直居中。

(3、背景属性

        background-color,背景颜色,与设置字体颜色一样,可以使用英文单词,可以使用rgb和十六进制表示,还可以设置透明度,需要用到rgba,如果属性的值为transparent,则该元素的背景颜色会跟随父元素的背景颜色变化而变化。
        background-image,表示设置背景图片。
        background-repeat,表示背景图片平铺效果。


        background-position,表示背景图片出现的位置,值的格式为横坐标 纵坐标,横坐标向右生长,纵坐标向下生长,除了使用坐标值表示位置,还可以使用百分数与常用的单词表示,如center表示居中,left表示左对齐,bottom表示下对齐,top表示上对齐。

注:

如果参数的两个值都是方位名词, 则前后顺序无关. (top left left top 等效)

如果只指定了一个方位名词 ,   则第二个默认居中 . (left 则意味着水平居中 , top 意味着垂直居中 . )
如果参数是精确值 , 则的的第一个肯定是 x , 第二个肯定是 y. (100 200 意味着 x 100, y 200)
如果参数是精确值 , 且只给了一个数值 , 则该数值一定是 x 坐标 , 另一个默认垂直居中 .
如果参数是混合单位 , 则第一个值一定为 x, 第二个值为 y 坐标 . (100 center 表示横坐标为 100, 垂直居中)

        background-size,表示背景图片的大小,格式为宽度 高度单位为px,还可以使用contain(尽可能的充满背景,可能会露出背景色),cover(完全充满背景,不会露出背景色,auto(自动)等。

(4、生成圆角矩形与圆

  • border-radius,表示将元素的边框的四角设为弧形,当元素为正方形且border-radius的值与元素宽高一致时,表现为圆形。
  • border-top-left-radius,设置左上角的圆角。
  • border-top-right-radius,设置右上角的圆角。
  • border-bottom-left-radius,设置左下角的圆角。
  • border-bottom-left-radius,设置右下角的圆角。
     

示例:

没处理前:

    <style>
        div {
            width: 400px;
            height: 300px;
            color: aliceblue;
            background-color: #c4eaa0;
            font-size: 25px;
            line-height: 200px;
            text-align: center;
        }
    </style>
    <div>每天开开心心!!!</div>

 

使用border-radius属性后的矩形:

    <style>
        div {
            width: 400px;
            height: 300px;
            color: aliceblue;
            background-color: #c4eaa0;
            font-size: 25px;
            line-height: 200px;
            text-align: center;

            border-radius: 20px;
        }
    </style>
    <div>每天开开心心!!!</div>

 生成圆:

        如果原来的元素区域是正方形,当border-tadius属性的值为该区域边长的一半时,可以生成圆形区域,border-radius属性的值为50%也可以做到相同的效果。

border-radius: 50%;

 

 



5、盒子模型:

        指的是将HTML中所有元素都看成一个盒子,盒子与盒子之间的距离,包括盒子的边框以及盒子边框和盒子内容的距离都可以设置。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vLAwyuck-1622525806196)(RackMultipart20210601-4-1w5z70a_html_8bf03415a97315e5.png)] 

margin(外边距)

<input type="radio" name="sex" value="1" style="margin: 20px;"/>男

border(边框)

#div2{
border:10px solid yellow;/*实线*/
border:10px dashed yellow;/*点状*/
border:10px dotted yellow;/*虚线*/
}

padding(内边距)

<td style="padding: 20px;">用户名:</td>

元素类型的补充

块级元素

默认情况下,块级元素独占一行(div , p,h1~h6)

可以设置宽和高。如果不设置宽和高,其中宽是默认填满父元素,而高是由内容

外边距、边框、内边距都可以设置

行内元素

默认情况下,多个行内元素处在同一行

不能设置宽和高

左右外边距、边框、内边距都可以设置,上下外边距设置无效

行内块元素

既具备行内元素的特征,还具备块级元素的特征



6、弹性布局

        默认情况下网页布局是从上到下的,但是实际生活中看到的网页水平布局到处都是,为了实现水平方向的布局,我们可以综合利用CSS的一些属性,来进行排版。

原始的垂直方向的布局:

 

         设置display属性值为flex就能将原来向下生长的元素转变为向右生长,这样就可以在该元素上进行水平方向进行布局了,也可以说以在一行上进行布局,这就叫弹性布局

弹性布局

        对于水平方向,可以设置justify-content属性来决定水平方向的排列方式,start表示靠左排列,end表示靠右排列,center表示居中排列。

居中排列 

除了这些,还可以在水平方向对排列的元素进行有间隔的排列:

  • space-between,靠左右边界的有间隔均匀排列。
  • space-around,与左右边界有间隔对水平的元素进行均分排列。
  • space-evenly,与左右边界有间隔,且间隔比space-around要小一点,均分排列。

 如下:space-between

 space-around

 space-evenly

        对于竖直方向,可以设置align-items属性,start顶端排列,end底端排列,cneter垂直居中排布。

垂直居中 

作为一个致力于后端开发的程序员来说,这些只是作为一个简单的了解,所以不是很全~

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

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

相关文章

【阅读笔记】多任务学习之MMoE(含代码实现)

本文作为自己阅读论文后的总结和思考&#xff0c;不涉及论文翻译和模型解读&#xff0c;适合大家阅读完论文后交流想法。 MMoE一. 全文总结二. 研究方法三. 结论四. 创新点五. 思考六. 参考文献七. Pytorch实现⭐一. 全文总结 提出了一种基于**多门混合专家(MMoE)**结构的多任…

MySQL数据库基础操作

目录 前言&#xff1a; 库的操作 创建数据库 显示所有数据库 选中数据库 删除数据库 MySQL数据类型 数值类型 字符串类型 日期类型 表的操作 创建表 显示数据库中所有表 查看表结构 删除表 小结&#xff1a; 前言&#xff1a; &#x1f389;MySQL是关系型数据…

【jquery Ajax】接口的学习与Postcode插件的使用

✍️ 作者简介: 前端新手学习中。 &#x1f482; 作者主页: 作者主页查看更多前端教学 &#x1f393; 专栏分享&#xff1a;css重难点教学 Node.js教学 从头开始学习 目录 接口 接口的概念 分析接口的请求过程 通过GET方式请求接口的过程 通过post方式请求接口的过程 接口…

基于CarSystemUI实现左侧导航栏NavigationBar及下拉面板定制开发——Android10智能座舱

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 例如&#xff1a;第一章 Python 机器学习入门之pandas的使用 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目…

使用多阶段和多尺度联合通道协调注意融合网络进行单图去雨[2022论文]

这是篇2022年来自一区的International Journal of Intelligent Systems的贵州大学的去雨论文 论文链接&#xff1a;百度网盘 请输入提取码 提取码&#xff1a;zdje ✍介绍 作者提出的问题&#xff1a; 1、目前去雨方法不能对不同密度和方向的雨条纹信息进行有效的编码 2、…

ThreadLocal类详解

ThreadLocal类注释翻译 打开JDK中ThreadLocal类源码&#xff0c;翻译类上注释如下(提取重点部分): 每个访问ThreadLocal实例对象的线程都有其自己的关于ThreadLocal对象的变量副本(通过get和set方法)&#xff0c;只要线程存活而且ThreadLocal对象也存活&#xff0c;则线程都保…

嵌入式和单片机开发模式的区别

一、 开发模式 单片机开发多为裸机&#xff0c;程序规模小&#xff0c;多为单个程序员独立开发。有些复杂产品也会使用高端单片机如STM32之类&#xff0c;并使用RTOS(uCOS、freeRTOS等)。嵌入式开发几乎全部基于嵌入式操作系统&#xff0c;目前使用最多的是 linux 和Android。…

公众号搜题接口系统使用方法

公众号搜题接口系统使用方法 本平台优点&#xff1a;免费查题接口搭建 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a;题库后台http://daili.jueguangzhe.c…

html实现飞机小游戏(源码)

文章目录1.思路讲解1.1 游戏设计1.2 主界面1.3 倒计时进入游戏1.4 游戏效果1.3 游戏结束2.实现源码2.1 游戏动态效果2.2 游戏主代码2.3 源码目录源码下载作者&#xff1a;xcLeigh 文章说明 html实现飞机大战源码&#xff0c;酷炫的界面效果&#xff0c;有四款飞机大战背景&…

Elasticsearch:通过热、温、冷和冻结层管理数据自动化 — 无需编码!

如果你想完全按照本文标题的建议去做&#xff0c;那就别无所求。 这篇文章旨在指导如何使用 Kibana Dashboard 的 “堆栈管理&#xff08;Stack Management&#xff09;” 功能集通过热、温、冷和冻结层自动移动数据&#xff0c;而无需进行任何编码或执行命令行动作。 在下面的…

Cookie 和 Session

本文主要讲解一下 Cookie 和 Session 的关系和区别&#xff0c;大家都知道 Session 比 Cookie 安全&#xff0c;Session 是存储在服务器端的&#xff0c;Cookie 是存储在客户端的&#xff0c;然而更详细的说&#xff0c;恐怕就不太清楚了 文章目录1. 什么是 HTTP2. Cookie2.1 图…

​目标检测算法——YOLOv5/YOLOv7改进之结合Criss-Cross Attention

关注”PandaCVer“公众号 深度学习Tricks&#xff0c;第一时间送达 &#xff08;一&#xff09;前沿介绍 论文题目&#xff1a;CCNet: Criss-Cross Attention for Semantic Segmentation 论文地址&#xff1a;https://arxiv.org/pdf/1811.11721.pdf 代码地址&#xff1a;ht…

B树和B+树(平衡多路查找树)

文章目录为什么需要B树B 树的特点B树的查找B树的引入B树的删除链接&#xff1a;https://www.cs.usfca.edu/~galles/visualization/Algorithms.html 可以点击 Indexing 下的 B Trees 和 B Trees 去学习。 为什么需要B树 对 B 树的需求随着访问物理存储介质&#xff08;如硬盘&…

【Java】反射, 枚举,Lambda表达式

✨博客主页: 心荣~ ✨系列专栏:【Java SE】 ✨一句短话: 难在坚持,贵在坚持,成在坚持! 文章目录一. 反射1. 反射的概述2. 反射的使用2.1 反射常用的类2.2 通过反射获取Class对象2.3 获得Class类相关的方法2.4 使用反射创建实例对象2.5 使用反射获取实例对象中的构造方法2.6 通过…

Spring学习第1篇:学习spring必备的概念知识

大家家好&#xff0c;我是一名网络怪咖&#xff0c;北漂五年。相信大家和我一样&#xff0c;都有一个大厂梦&#xff0c;作为一名资深Java选手&#xff0c;深知Spring重要性&#xff0c;现在普遍都使用SpringBoot来开发&#xff0c;面试的时候SpringBoot原理也是经常会问到&…

纸牌博弈问题

纸牌博弈问题 作者&#xff1a;Grey 原文地址&#xff1a; 博客园&#xff1a;纸牌博弈问题 CSDN&#xff1a;纸牌博弈问题 题目描述 有一个整型数组 A&#xff0c;代表数值不同的纸牌排成一条线。玩家 a 和玩家 b 依次拿走每张纸牌&#xff0c; 规定玩家 a 先拿&#xff…

win11开机音效设置的方法

微软为win11重做了开机音效&#xff0c;与我们一直以来使用的开机音效不太一样&#xff0c;听起来很不舒服&#xff0c;因此我们可以通过设置开机音效的方法来修改它&#xff0c;只要在个性化设置中就可以找到了&#xff0c;下面一起来试试看吧。 win11开机音效怎么设置&#…

wordpress图片压缩插件-免费批量wordpress图片压缩

wordpress图片压缩插件&#xff0c;相信每个人都知道图片的太大会影响到网站的加载速度。过多的图像会对服务器产生相应的压力。导致网站打开会越来越慢。而图片也是会被搜索引擎收录的&#xff0c;可以在百度图片里面能搜索的到&#xff0c;也算是增加了网站的宣传力度。今天给…

(附源码)计算机毕业设计SSM基于微信平台的匿名电子投票系统

&#xff08;附源码&#xff09;计算机毕业设计SSM基于微信平台的匿名电子投票系统 项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。…

【微信小程序支付功能】uniapp实现微信小程序支付功能

支付实现流程 首先前端写一个页面&#xff0c;简单说就是有一个输入支付金额的 然后有一个按钮&#xff0c;点击可以支付。 点击按钮后触发支付方法&#xff0c;就是我下面写的这些代码&#xff0c;复制就可以了。 然后先请求后端的一个方法&#xff0c;把你的价格还有openid之…