网络安全之前端学习(css终章)

admin 2025年4月5日23:53:15评论0 views字数 3019阅读10分3秒阅读模式

如大家所见,今天的文章就是css的最后一篇文章。那么话不多说,我们开始吧。本章内容比较杂,就是补充之前几章没讲到的。

1.关系选择器

之前我们讲到了很多选择器,这里补充一个关系选择器。

1.1后代选择器

后代选择器,顾名思义,就是选择自己的后面的选择器,将要选择的和被选择的放在一起,再使用css,以下是一个样例。

网络安全之前端学习(css终章)

在这里我们可以看见,不管中间隔了多少,只要是ul标签下的li标签,都会被选中。即使后面的li标签是属于ol的但是我们就是不讲理,就选中。

1.2子代选择器

基于上面一种情况,那如果我就要ul下的li标签变红怎么办?那就是用子代选择器>

网络安全之前端学习(css终章)

这里很明显,只选择ul下的li标签,但是ol下的li标签却没有变红。

1.3相邻兄弟选择器

但是再实际引用中,我可能不要全部变红,只要一个变红,但是是同一个标签,怎么办,接下来讲讲相邻兄弟选择器,这个选择器可以选择和要选择的标签相邻的标签

网络安全之前端学习(css终章)

很明显可以看到,nihao1变色,nihao2不变色。值得一提的是,相邻兄弟选择器只会往下寻找而不会往上寻找。

1.4通用兄弟选择器

这个就和上面的有所区别,和后代选择器有点像,选择所有兄弟,使用~

网络安全之前端学习(css终章)

这张图可以明显看到,与p标签同级的h1标签都被选中,但是他不可以选择不同级的标签。

2.盒子模型

我们打开一个网页,按f12,选择计算样式,就会看到盒子模型,下图是一个哔哩哔哩视频的盒子模型。

网络安全之前端学习(css终章)

Css盒子模型有主要四种属性,外边距(margin),边框(border),内边距(padding),实际内容(content)。

2.1内边距属性

Padding属性就是把你的框撑大,是你的内容更好展示。

网络安全之前端学习(css终章)

网络安全之前端学习(css终章)

两图对比发现,padding属性似乎把图撑大了,其实他就是填充周围,使其距离边框50px,就是这个作用。Padding可以写两个值,第一个值代表上下,第二个值代表左右。当然你也可以写一个,就表示距离周围。

但是如果四个方向都不一样要怎么办,可以使用padding不同方向,padding-rightpadding-leftpadding-toppadding-bottom四个值设置。

2.2border属性

Border边框属性可以对选中的内容制造边框。

网络安全之前端学习(css终章)

第一个是实线的宽度大小,第二个是实线的样式(主要为solid,实线),第三个是线的颜色。当然你也可以分开写

网络安全之前端学习(css终章)

但是可以一起写为什么要分开写呢。

2.3外边距属性

外边距完全透明,但是会间隔开与其他内容

网络安全之前端学习(css终章)

网络安全之前端学习(css终章)

两张图可以清晰的看出margin可以撑开大小,撑开距离。

3.弹性盒子模型

弹性盒子由弹性容器(flex container)和弹性子元素(flex item)组成。

弹性容器通过设置display属性的值为flex将其定义为弹性容器。

弹性容器内包含一个或多个弹性子元素。

那么这个弹性盒子模型就是管理多个盒子的东西

3.1display属性

Display就是启动弹性容器的条件属性。使用display可以使用弹性盒子。

网络安全之前端学习(css终章)

网络安全之前端学习(css终章)

显而易见,display属性使得盒子横向摆放,因为这就是display的默认值。

3.2flex-direction属性

但是我也可以让他横向摆放。Flex-direction属性就可以改变横竖方向。他有四个值row(左对齐同时横向排列),row-reverse(反转横向排列),column(纵向排列),column-reverse(反转纵排列)。这里我就演示一个column其他的大家自行演示。

网络安全之前端学习(css终章)

3.3justify-content属性

这个属性就是改变盒子的位置,值分别为flex-start(上),flex-end(下),flex-center(居中)

网络安全之前端学习(css终章)

3.4align-items

改变盒子的位置,不过一个是上下,一个是左右。,值也是相同的,flex-end(右),flex-start(左),center(中)

网络安全之前端学习(css终章)

3.5flex属性

(这是作用在子元素,切记。)

对于flex属性,可以设置占总体比例大小。可以在父级盒子发生变化时同时变化,不需要改变大小。

网络安全之前端学习(css终章)

我没有改变盒子的大小,但是盒子法生变化,这是因为我设置了占比,使其发生变化。

4.浮动

浮动就是使用float属性定义浮动的方向,任何元素都可以浮动。浮动后使元素脱离文档流,但是浮动只有左右浮动,没有上下浮动。

元素浮动后,脱离文档流,你可以理解为变成两层,出现折叠现象

网络安全之前端学习(css终章)

同时使用浮动可以去除图片的间距

网络安全之前端学习(css终章)

比如这是没有使用float的,可以看到两张图片之间有空隙

网络安全之前端学习(css终章)

使用float之后就没有这个困扰。

当多个div一起时,我们可以使用float使得他们横向摆放。

网络安全之前端学习(css终章)

那么这个到底有什么作用呢

在我们的有序和无序标签,都是纵向摆放,那么我们可以使用float使其横向摆放。

网络安全之前端学习(css终章)

当容器不足以容纳子级容器,那么只能放在第二排。

网络安全之前端学习(css终章)

5.清除浮动

浮动其实是有副作用的,他会造成父级元素塌陷,后续元素也会受到影响。所以必要情况下,我们要清除浮动

5.1clear

使用clear可以直接清除浮动(运用于子级盒子)

网络安全之前端学习(css终章)

这里很明显看到浮动被清除了。

5.2overflow

当遇到父级元素塌陷的情况,使用overflowclear可以处理。(作用于父级)但是如果没有出现父级塌陷,那么是无法清除浮动的。

6.定位

6.1绝对定位

顾名思义,就是绝对的定位,同时是脱离文档流的,根据自己的定义的位置而变化。

网络安全之前端学习(css终章)

6.2固定定位

固定定位就是把定位固定在一个地方,表面上似乎和绝对定位没什么区别,但是他会被固定在一个地方,不论你怎么滚动界面,固定定位会一直在那个地方。

网络安全之前端学习(css终章)

这里无法给大家演示动画,那么大家一起去试一下,使用height属性把页面撑高,可以使页面滚动。

6.3相对定位

相对定位就是相对父级元素定位

网络安全之前端学习(css终章)

网络安全之前端学习(css终章)

可以看到,使用relative后会跟着父级元素一起移动。

7.css3新特性

7.1border-radius

这个属性可以使得边框变得圆润

网络安全之前端学习(css终章)

它可以设置为一个值,四个角相同,两个值,第一个为左上和右下,第二个为右上和左下,三个,不建议用,四个一个角一个,从上到下,从左到右。

7.2box-shadow

这个属性就是给容器添加阴影。

网络安全之前端学习(css终章)

第一个值是左右,第二个值是上下,第三个是阴影长度,第四个是颜色。

8.动画

之前讲过图片标签img,那么这次来讲讲动画。动画就是从一个变化到第二个。

使用@keyframe的方式创建动画。

其中设置变化的位置,如果只有两个,使用from-to,也可以使用百分比的形式设置。

而在我们的容器中就比较讲究了

首先写入animation关键字,第二个就是名字,即keyframes后面的名字,然后是动画持续时间,就是几秒循环一次,下一个是效果,这里只推荐一个linear匀速。接下来是延时,没写默认是零。最后一个是播放方向,默认是正向。

网络安全之前端学习(css终章)

这样就会实现动画这里不好演示,大家自己上机实验。

大家可以在这个基础上加入其他属性来玩玩,顺便练一下手。

9.结语

那么这一章就到这里结束了。其实因该还有几个内容没讲,但是我看似乎没有很重要(其实也是因为我懒),在最后先给大家道个歉,由于本人课程安排,关于前端的内容会断更一段时间,后续有时间会补上,实在是挤不出时间。

最后的最后,附上学习视频,本文学习自

https://www.bilibili.com/video/BV1oz421q7BB/?spm_id_from=333.337.search-card.all.click

如要学习建议去看原视频。

原文始发于微信公众号(泷羽Sec-林):网络安全之前端学习(css终章)

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年4月5日23:53:15
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   网络安全之前端学习(css终章)http://cn-sec.com/archives/3919448.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息