【CSS】一篇掌握CSS

embedded/2024/12/2 21:47:48/
htmledit_views">

不是因为有了希望才去坚持,而是坚持了才有了希望

目录

一.导入方式

1.行内样式

2.内部样式

3.外部样式(常用)

二.选择器

1.基本选择器(常用)

1.1标签选择器

1.2类选择器

1.3id选择器

2.层次选择器

2.1后代选择器

2.2子选择器

2.3相邻兄弟选择器

2.4通用兄弟选择器

3.结构伪类选择器

4.属性选择器

三..美化网页

1.字体样式font

2.文本样式text

3.超链接伪类

4.列表样式

5.背景background

四.盒子模型

1.边距参数顺序

2.边框border

2.1圆角边框

五.浮动

1.display

2.float

3.黑框塌陷问题

3.1 overflow

4.display和float对比

六.定位position

1.相对定位relative

2.绝对定位absolute

3.固定定位fixed

4.图层z-index


一.导入方式

1.行内样式

在标签元素中,编写一个style属性,编写样式即可

html"><h1 style = "color : red">我是标题</h1>
2.内部样式

html的style标签内书写

html"><style>h1{color: red;}
</style>
3.外部样式(常用)

html内使用link标签导入外部html" title=css>css文件,在外部书写html" title=css>css代码

html"><link rel="stylesheet" href="html" title=css>css/style.html" title=css>css">

二.选择器

1.基本选择器(常用)

1.1标签选择器
html"><h1 class = 'class' id = 'id'>我是标题</h1>
html" title=css>css">h1{color: red;
}
1.2类选择器
html" title=css>css">.class{color: blue;
}
1.3id选择器
html" title=css>css">#id{color: black;
}

优先级

id选择器>类选择器>标签选择器(上面的h1标签显示为黑色)

2.层次选择器
2.1后代选择器

body后面的所有p标签

2.2子选择器

body后面的第一代标签

2.3相邻兄弟选择器

下面的一个兄弟+

2.4通用兄弟选择器

下面的所有兄弟~

3.结构伪类选择器

4.属性选择器

格式

html" title=css>css">标签[]{}
html" title=css>css">a[id]{}
/*a标签中存在id属性的元素*/
a[id = links]{}
/*a标签中id是links的元素*/
a[id *= links]{}
/*a标签中id包含links的元素*/
a[id ^= links]{}
/*a标签中id以links开头的元素*/
a[id $= links]{}
/*a标签中id以links结尾的元素*/

类似于正则表达式

三..美化网页

1.字体样式font

2.文本样式text

html" title=css>css">a{color: rgba(0,255,255,0.9);/*0.9是透明度*/text-align: center;/*文字左右居中*/text-indent: 2em;/*首行缩进2格*/height: 300px;line-height: 300px;/*字体高度和整体高度一直,就会上下居中*/text-decoration: none;/*取消下划线*/
}

图片和文本对齐

html"><p><img src="../resources/image/1.jpg" alt=""><span>我是奶龙</span>
</p>
html" title=css>css">img,span{vertical-align: middle;
}

显示效果

3.超链接伪类

鼠标悬停执行

html" title=css>css">a:hover{color: red;
}
4.列表样式
html" title=css>css">ul li{list-style: none;/*去掉圆点*/list-style: circle;/*空心圆*/list-style: decimal;/*有序数字*/list-style: square;/*正方形*/
}
5.背景background

添加背景默认为全部平铺

html" title=css>css">a{background: red url("resources/image/1.jpg") 270px 10px no-repeat;
}

颜色,图片地址,图片位置,平铺方式no-repeat就是不平铺,如下图

直接设置背景颜色

html" title=css>css">a{background: red;
}

                           

四.盒子模型

在网页中,每个元素都是一个盒子模型,网页会有默认的边距大小,所以一般需要初始化边距为0

html" title=css>css">h1,ul,li,a,body{margin: 0;/*外边框设置为0*/padding: 0;/*内边框设置为0*/text-decoration: none;/*消除下划线*/
}

1.边距参数顺序

每个盒子是一个矩形,他有四个边,所以设置内外边距的时候会有四个参数

margin: 10px 10px 10px 10px;

如果传入四个参数是上左下右(顺时针旋转)
传入两个参数是上下左右
传入一个参数就是全部

自动设置边距使元素居中auto

margin: 0 auto;
2.边框border

border : 3px solid red;   (solid是实线,dashed是虚线)

2.1圆角边框

圆形 = 宽度的一半

五.浮动

在一个网页中,每个元素会出现在不同的位置,我们要对这些元素进行布局,就需要用到浮动

这些元素有默认的布局方式,我们要改变他们来手动布局

1.display

这里我们需要引入一个抽象概念,我们可以叫他黑框

我们在写html代码的时候,会写很多div,把一些元素放到div中,这个div就是一个边界,使用display改变元素属性的时候,不会使他离开这个"黑框div"

display : block;(块元素)
display : inline;(行内元素)
display : inline-block;(既是行内元素也是块元素),是块元素但是可以在一行

行内元素不能设定height和width,必须要变成块元素才可以设定

导航栏就是ul li标签变成行内元素

2.float

浮动就是把这个块元素单独飘起来,会飘出黑框外

float : left; 左浮
float : right; 右浮

浮动会导致元素挤在一起,所以我们需要清除浮动clear both;

既有浮动效果,也要有块元素效果(就让他排下去,不要挤在一起),就要清除浮动

3.黑框塌陷问题

我们知道,浮动会飘出黑框外,我们不想出现这种情况就要解决黑框塌陷问题

推荐使用第四种方法

3.1 overflow

overflow : scroll 规定文本或图片超过了高度,加滚动条(没人会用这个)

overflow : hidden 规定文本或图片超过了高度,会隐藏(知道这个就行)

4.display和float对比

六.定位position

我们对一个网页中的元素进行布局的时候,还需要设置他们具体的位置,所以就要用到定位

1.相对定位relative

相对于自己原来的位置偏移,仍然在黑框中,没有塌陷,原来的位置会被保留
position : relative

top : -20px;  (距离上面-20px,就是上移)
left : 20px;    (距离左边20px,就是右移)
bottom : -10px(距离下面-10px,就是下移)
right : 20px(距离右边20px,就是左移)

2.绝对定位absolute

一般都是相对于父元素定位

给父级元素加上相对定位,就会相对于父级元素定位

不给父元素加相对定位就会相对于浏览器定位,滚动滑轮位置会变(初始浏览器大小)

给父元素加上相对定位relative

自身相对于父元素左移30px

3.固定定位fixed

这里设置第一个div元素相对于浏览器位于初始的右下角,但是滚动滑轮位置会变
设置第二个div元素固定定位在浏览器右下角,滚动滑轮位置不会变

4.图层z-index

我们需要把一些块元素堆叠的时候,就需要使用z-index来决定谁在上谁在下

练习

HTML代码

CSS代码


opacity透明度


http://www.ppmy.cn/embedded/142421.html

相关文章

Android 图形系统之一:概览

Android 图形系统是一套完整的架构&#xff0c;用于管理从应用绘制到显示屏幕的整个流程。它涉及多个层次和组件&#xff0c;从应用程序到硬件&#xff0c;确保每一帧都能准确、高效地呈现到用户的设备屏幕上。 1. Android 图形系统的架构 Android 图形系统的架构可以分为以下…

【linux学习指南】linux捕捉信号

文章目录 &#x1f4dd;前言&#x1f320; 信号捕捉的流程&#x1f309; sigaction &#x1f320;穿插话题-操作系统是怎么运⾏的&#x1f309; 硬件中断&#x1f309;时钟中断 &#x1f6a9;总结 &#x1f4dd;前言 &#x1f320; 信号捕捉的流程 如果信号的处理动作是⽤⼾⾃定…

SeggisV1.0 遥感影像分割软件【源代码】讲解

在此基础上进行二次开发&#xff0c;开发自己的软件&#xff0c;例如&#xff1a;【1】无人机及个人私有影像识别【2】离线使用【3】变化监测模型集成【4】个人私有分割模型集成等等&#xff0c;不管是您用来个人学习还是公司研发需求&#xff0c;都相当合适&#xff0c;包您满…

Web登录页面设计

记录第一个前端界面&#xff0c;暑假期间写的&#xff0c;用了Lottie动画和canvas标签做动画&#xff0c;登录和注册也连接了数据库。 图片是从网上找的&#xff0c;如有侵权私信我删除&#xff0c;谢谢啦~

什么是JSON,有什么特点

什么是 JSON&#xff1f; JSON&#xff08;JavaScript Object Notation&#xff09;是一种轻量级的数据交换格式&#xff0c;易于人阅读和编写&#xff0c;同时也易于机器解析和生成。它基于 JavaScript 的子集&#xff0c;但独立于语言&#xff0c;被广泛用于服务器与 Web 应…

试题转excel;试题整理;试卷转Excel,word试题转excel

一、问题描述 我父亲是一名教师&#xff0c;偶尔会需要整理一些高质量的题目到excel中 以往都是手动复制搬运&#xff0c;几百道题几乎需要一个下午的时间 关键这些事&#xff0c;枯燥无聊费眼睛&#xff0c;实在是看起来就很蠢的工作 就想着做一个工具&#xff0c;可以自动…

微服务上下线动态感知实现的技术解析

序言 随着微服务架构的广泛应用&#xff0c;服务的动态管理和监控变得尤为重要。在微服务架构中&#xff0c;服务的上下线是一个常见的操作&#xff0c;如何实时感知这些变化&#xff0c;确保系统的稳定性和可靠性&#xff0c;成为了一个关键技术挑战。本文将深入探讨微服务上…

【笔记】成为雍正

观古代历史&#xff0c;不过帝王一家一姓之家史 时间 1662年&#xff0c;田文镜出生。1672年&#xff0c;张廷玉出生。1674年&#xff0c;胤礽出生。1678年&#xff0c;胤禛出生。1679年&#xff0c;年羹尧出生。1680年&#xff0c;鄂尔泰出生。1700年&#xff0c;索额图被赐死…