先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Web前端全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024c (备注前端)
正文
id选择器| 标签中的id属性(标签id属性类似宏定义,约定HTML文档内标签id唯一)| 定制某标签的样式
类名选择器 |HTML文档中class属性相同的标签(标签的class属性可以重名或多个)| 同样风格的标签成组统一配置
通配选择器 |HTML文档内的所有标签 |清除页面默认样式
标签选择器
<style>
p{
color: skyblue;}
</style>
…
<p>测试1</p>
id选择器
<div>
<p>测试2</p>
</div>
<style>
#test{
font-size: 20px;}
</style>
…
<p id="test">测试1</p>
类名选择器
<style>
.test{
color: blue; }
</style>
…
<p class="test">测试1</p>
<p class="test">测试2</p>
<p class="test">测试3</p>
通配选择器
<style>
\*{
margin: 0;
padding: 0;}
</style>
…
<p>p</p>
<h1>h1</h1>
<div>div</div>
3.2.4 高级选择器
名称 |选择对象 |用途|
|–|–|–|–
后代选择器 |根据标签间的后代关系确定(后代关系不一定是直接继承,使用空格连接多个选择器确定后代关系) |精确配置某个或某范围标签
交集选择器 |根据选择器的交集关系确定(使用.表示不同选择器交集) |精确配置某个或某范围标签
并集选择器 |根据选择器的并集关系确定(使用,表示不同选择器并集) |定制化统一配置
后代选择器
<style>
.box1 ul li{
color: blue;}
.box2 li{
color: red;}
</style>
…
<div class="box1">
<ul>
<li>box1.ul.li</li>
</ul>
</div>
<div class="box2">
<ul>
<li>box2.ul.li</li>
</ul>
</div>
交集选择器
<style>
p.test{
color: blue;}
.test{
color: red;}
</style>
…
<p class="test">p</p>
<div class="test">class</div>
并集选择器
<style>
.par li,p{
color: green;}
</style>
…
<div class="par">
<ul>
<li>li</li>
</ul>
</div>
<p>class</p>
3.3 层叠性
CSS层叠性定义为:有多个选择器对某个或某几个标签中的多条样式进行选择,如果多个选择器都赋予某个或某几个标签相同属性不同样式,则样式作用范围发生了冲突,产生层叠现象。
CSS层叠性的规则如下:
(1) 多个选择器赋予某标签不同属性样式,彼此不冲突
(2) 多个同类基础选择器赋予某标签相同属性不同样式,后样式层叠前样式
(3) 多个不同基础选择器赋予某标签相同属性不同样式,高优先级样式层叠低优先级
(4) 高级选择器层叠性规则
① 若发生标签级冲突,则累加计算高级选择器中各基础选择器的优先级,高优先级样式层叠低优先级;
② 若未发生标签级冲突,则采用就近原则——继承最近层级选择器的属性;
③ 若优先级相同且层级也相同,则后样式层叠前样式。
3.4 容器
容器是CSS布局的重要数据结构,CSS容器主要属性间关系如图所示,其中容器实际加载区域为
w
i
d
t
h
×
h
e
i
g
h
t
width\times height
width×height;
容器实体区域为
(
w
i
d
t
h
p
a
d
d
i
n
g
b
o
r
d
e
r
)
×
(
h
e
i
g
h
t
p
a
d
d
i
n
g
b
o
r
d
e
r
)
\left( width+padding+border \right) \times \left( height+padding+border \right)
(width+padding+border)×(height+padding+border);容器实际占有区域为
(
w
i
d
t
h
p
a
d
d
i
n
g
b
o
r
d
e
r
m
a
r
g
i
n
)
×
(
h
e
i
g
h
t
p
a
d
d
i
n
g
b
o
r
d
e
r
m
a
r
g
i
n
)
\left( width+padding+border+margin \right) \times \left( height+padding+border+margin \right)
(width+padding+border+margin)×(height+padding+border+margin)
下面提供几个CSS容器的应用案例。
图标制作
LOGO超链接
3.5 浮动
CSS浮动样式使元素脱离标准文档流,实现更多自由度的设计,主要用于网页整体布局等。
CSS浮动由float
定义,主要有左浮动和右浮动
元素设置浮动后,既可以设置宽高,又可以定制化显示,不再区分标准显示模式。父代中的一个子代容器设置了浮动特效,则所有子代均需要设置浮动,否则会打乱布局;容器设置浮动特性后,缺省宽度不再为父代宽度,而为内部实体宽度。
给出一个实例:
<style>
.inner{
width: 970px;
height: 970px;
margin: 50px auto;}
.inner .top{
height: 103px;
margin-bottom: 10px;}
.inner .top .logo{
width: 277px;
height: 100%;
background-color: red;
float: left;}
.inner .top .nav{
width: 679px;
height: 100%;
float: right;
}
.inner .top .nav .navListA{
width: 137px;
height: 49px;
background-color: yellowgreen;
float: right;
margin-bottom: 8px;
}
.inner .top .nav .navListB{
width: 679px;
height: 46px;
background-color: yellowgreen;
float: right;}
.inner .middle{
height: 435px;
margin-bottom: 10px;
}
.inner .middle .news{
height: 100%;
width: 310px;
background-color: orange;
float: left;
}
.inner .middle .info{
height: 100%;
width: 650px;
float: right;
}
.inner .middle .info .infoAll{
height: 400px;
width: 100%;
margin-bottom: 10px;
}
.inner .middle .info .infoAll .infoLeft{
height: 100%;
width: 450px;
margin-right: 10px;
float: left;
}
.inner .middle .info .infoAll
.infoLeft{
height: 240px;
width: 100%; background-color: skyblue;
margin-bottom: 10px;}
.inner .middle .info .infoAll .infoLeft
.infoLeftMid{
height: 110px;
width: 100%;
background-color: skyblue;
margin-bottom: 10px;}
.inner .middle .info .infoAll .infoLeft .infoLeftBottom{
height: 30px;
width: 100%;
background-color: skyblue;
margin-bottom: 10px;
}
.inner .middle .info .infoAll .infoRight{
height: 100%;
width: 190px;
background-color: purple;
float: right;
}
.inner .middle .info .infoAbs{
height: 25px;
width: 100%;
background-color: darkgreen;
}
.inner .bottom{
height: 35px;
background-color: navy;
}
</style>
...
<div class="inner">
<!-- 顶部布局 -->
<div class="top">
<div class="logo"></div>
<div class="nav">
<div class="navListA"></div>
<div class="navListB"></div>
</div>
</div>
<!-- 中间布局 -->
<div class="middle">
<div class="news"></div>
<div class="info">
<div class="infoAll">
<div class="infoLeft">
<div class="infoLeftTop"></div>
<div class="infoLeftMid"></div>
<div class="infoLeftBottom"></div>
</div>
<div class="infoRight"></div>
</div>
<div class="infoAbs"></div>
</div>
</div>
<!-- 底部布局 -->
<div class="bottom"></div>
</div>
3.6 定位
CSS定位指将容器按指定位置加载,主要分为不脱离标准流的相对定位,以及脱离标准流的绝对定位和固定定位。
序号 | 关键字 | 含义 |
---|---|---|
1 | position | 设置定位模式,常用属性值为relative(相对定位)、absolute(绝对定位)、fixed(固定定位) |
2 | left | 设置从参考点开始,从左往右定位的距离 |
3 | right | 设置从参考点开始,从右往左定位的距离 |
4 | top | 设置从参考点开始,从上往下定位的距离 |
5 | bottom | 设置从参考点开始,从下往上定位的距离 |
3.5.1 相对定位
参考点为设置定位元素所在的容器。下面为使用相对定位实现导航条的案例。
<style>
div ul{
width: 640px;
height: 60px;
font-size: 20px;
margin: 100px auto;
}
div ul li{
width: 120px;
height: 100%;
background-color: navy;
float: left;
margin-right: 2px;
text-align: center;
line-height: 60px;
}
div ul li:hover{
background-color: white;
}
div ul li a{ display: block;
color: white;
margin: auto auto;
}
div ul li a:hover{
background-color: cyan;
position: relative;
bottom: 10px;
}
</style>
...
<div>
<ul>
<li><a href="#">测试</a></li>
<li><a href="#">测试</a></li>
<li><a href="#">测试</a></li>
<li><a href="#">测试</a></li>
<li><a href="#">测试</a></li>
</ul>
</div>
3.5.2 绝对定位
参考点为设置绝对定位的元素所在容器的父代容器,前提是父代容器设置定位属性,否则以网页body为参考。由于相对定位元素不脱标,结构更稳定,因而父代容器常使用相对定位,子代元素则使用绝对定位。
<style>
div.father{
width:400px;
height: 300px;
border: 2px dashed red;
margin: 100px auto;
position: relative;
}
div.test{
width: 150px;
height: 150px;
font-size: 20px;
border: 2px solid blue;
position: absolute; top:50%;
left: 50%;
margin-left: -75px;
margin-top: -75px;
padding: 20px;
}
</style>
...
<div class='father'>
<div class="test">
测试测试测试测试测试测试测试测试测试测试
</div>
</div>
3.5.3 固定定位
参考点为浏览器页面。
<style>
body{
height: 2000px;
}
a{
display: block;
width: 100px;
height: 100px;
font-size: 15px;
border:3px solid red; border-radius: 50%;
padding: 25px 30px;
position: fixed;
right: 80px;
bottom: 80px;
}
</style>
...
<a class="cir" href="#">返回顶部</a>
🔥 更多精彩专栏:
👇源码获取 · 技术交流 · 抱团学习 · 咨询分享 请联系👇
最后
前端CSS面试题文档,JavaScript面试题文档,Vue面试题文档,大厂面试题文档
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
30px;
position: fixed;
right: 80px;
bottom: 80px;
}
…
返回顶部
![在这里插入图片描述](https://img-blog.csdnimg.cn/819e538b19144e14964d6f5304764928.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBARnJpZ2lkV2ludGVy,size_15,color_FFFFFF,t_70,g_se,x_16)
---
🔥 **更多精彩专栏**:
* [《ROS从入门到精通》]( )
* [《机器人原理与技术》]( )
* [《机器学习强基计划》]( )
* [《计算机视觉教程》]( )
* …
👇源码获取 · 技术交流 · 抱团学习 · 咨询分享 请联系👇
### 最后
**前端CSS面试题文档,JavaScript面试题文档,Vue面试题文档,大厂面试题文档**
[外链图片转存中...(img-xg9EJb0j-1713442224763)]
[外链图片转存中...(img-MXKKZ9G6-1713442224763)]
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注前端)**
[外链图片转存中...(img-8hBMk4Nc-1713442224763)]
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**