==========================================================================
脱标元素特点:
-
可以随意设置宽高
-
如果没有设置宽高,宽高由内容决定
-
不再受标准流(normal flow)的约束
-
不再严格区分块级元素、行内级元素
-
元素内部默认还是按照标准流
哪些元素是脱标元素:
-
浮动元素
-
float:left
-
float:right
-
浮动元素之间不能层叠
-
浮动元素不能跟行内级内容层叠
-
绝对定位元素
-
position:absolute
-
position:fixed
-
通过 z-index 可以设置元素的层叠顺序
块级元素(基本都是非替换)
-
div、p、pre、table、form、h1~h6
-
ul、li、ol、dl、dt、dd
-
header、footer、nav、section、article、aside
-
独占一行
-
可以随意设置宽高
-
如果不设置高度,高度默认由内容决定
行内级元素
-
替换元素
-
img、input、iframe、canvas、object
-
video、audio
-
可以跟其他行内级元素在同一行显示
-
可以随意设置宽高
-
非替换元素
-
span、strong、a、em、i
-
可以跟其他行内级元素在同一行显示
-
不可以随意设置宽高
-
如果不设置宽高,宽高默认由内容决定
inline-block
-
可以跟其他行内级元素在同一行显示
-
可以随意设置宽高
-
如果不设置宽高,宽高默认由内容决定
========================================================================
-
width、min-width、max-width
-
height、min-height、max-height
-
padding、padding-top、padding-right、padding-bottom、padding-left
-
margin、margin-top、margin-right、margin-bottom、margin-left
-
border、border-top、border-right、border-bottom、border-left
-
可以利用边框生成三角形
-
box-sizing
-
content-box
-
width 不包括 padding 和 border,height 不包括 padding 和 border
-
border-box
-
width = padding + border + 内容宽度
-
height = padding + border + 内容高度
-
box-shadow
-
box-shadow: 2px 5px 10px 7px rgba(0,0,0,.2) inset
2px:向右偏移2px
5px:向下偏移5px
10px:模糊半径(模糊度,这个值越大,越模糊)
7px:扩散半径(值越大,扩散范围越广)
inset:阴影显示到元素内部(如果不加 inset,看显示在元素外部)
-
overflow
-
visible
:溢出内容仍然可见 -
hidden
:溢出内容直接隐藏 -
scroll
:会一直显示水平、垂直方向的滚动条 -
auto
:会自动根据内容的溢出情况来决定是否显示滚动条 -
对于行内级非替换元素(span、strong、a 等)
-
margin-top、margin-bottom 不起作用
-
padding-top、padding-bottom、border-top、border-bottom 的效果比较特殊
-
对于块级元素(比如 div、p 等)
-
存在 margin-top、margin-bottom 传递的问题(传递给块级父元素)
-
存在 margin-top、margin-bottom 折叠问题(margin collapse)
-
包含块的宽度 = margin-left + margin-right + 块级元素实际占用的宽度
-
position:static
-
默认(非定位元素)
-
不脱离标准流
-
不能通过 left、right、top、bottom 调整位置
-
position:relative
-
相对定位(定位元素)
-
不脱离标准流
-
可以通过 left、right、top、bottom 调整位置
-
定位参照对象:自己原来的位置
-
position:absolute
-
绝对定位(定位元素,绝对定位元素)
-
脱离标准流
-
可以通过 left、right、top、bottom 调整位置
-
定位参照对象:
-
最邻近的定位祖先元素(从祖先元素中找到最邻近的定位元素)
-
如果找不到这样的祖先元素,那么就参照视口(viewport)
很多情况下,子元素都会参照父元素进行绝对定位,常用做法是:子绝父相
- 子元素:
position: absolute
- 父元素:
position: relative
-
position:fixed
-
固定定位(定位元素,绝对定位元素)
-
脱离标准流
-
可以通过 left、right、top、bottom 调整位置
-
定位参照对象:视口(viewport)
-
对于绝对定位元素来说
-
包含块的宽度 = left + right + margin-left + margin-right + 元素的实际占用宽度
-
包含块的高度 = top + bottom + margin-top + margin-bottom + 元素的实际占用高度
对于定位元素来说,有时候会利用 left、margin-left 联合使用来让一个元素水平居中:
-
left: 自己宽度的一半乘以负一
-
margin-left: 50%
-
color:前景色(文字颜色、边框颜色、文字装饰线颜色,
#fff
、#ffffff
、rgb(255,255,255)
、rgba(255,255,255,.5)
) -
text-align,设置元素的内容在元素中的水平位置
-
left
:左对齐 -
right
:右对齐 -
center
:居中 -
text-indent,一般用来设置首行文本的缩进
-
常见用法:
text-indent: 2em
-
刚好缩进 2 个文字
-
text-decoration,设置文字装饰线
-
underline
:下划线 -
line-through
:删除线(比如电商网站的原价) -
none
:去除删除线 -
text-overflow,设置隐藏掉的溢出文字内容的表现形式
-
clip
:溢出的内容直接裁剪 -
ellipsis
:溢出的内容用省略号显示
让一个元素永远只显示一行文字,并且溢出部分显示省略号:
white-space: nowrap; /* 永远只显示一行文字 */
overflow: hidden; /* 隐藏溢出的内容 */
text-overflow: ellipsis; /* 隐藏掉的内容用省略号来表示 */
-
font-family:字体名称,可以设置多个字体名称,它们之间用逗号隔开
-
一般英文字体写在前面,中文字体写在后面
-
font-weight:设置轻重(粗细)
-
100~900
-
bold
:700 -
normal
:400 -
font-size:设置字体大小
-
font-size: 10px
-
font-size: 10%
-
使用父元素的 font-size 乘以 10%
-
继承父元素的 font-size 时,继承的是计算值,不是直接继承 10%
-
font-size: 0.5em
,使用父元素的 font-size 乘以50% -
width: 2em
,使用自己的font-size乘以2 -
line-height
-
line-height: 20px
-
line-height: 20%
,使用自己的 font-size 乘以 20% -
line-height: 2em
,使用自己的 font-size 乘以 2 -
line-height: 2
,使用自己的 font-size 乘以 2 -
如果希望一行文字垂直居中,常见做法是:
设置 line-height 和 height 保持一致
-
font-style
-
normal
:正常 -
italic
:斜体 -
oblique
:倾斜 -
font
-
简写属性
-
格式:
font-size/line-height font-family
- background-color:背景色
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注:前端)
![](https://img-blog.csdnimg.cn/img_convert/b439ebafb6ffffab88f5da512bb79b0d.jpeg)
最后
javascript是前端必要掌握的真正算得上是编程语言的语言,学会灵活运用javascript,将对以后学习工作有非常大的帮助。掌握它最重要的首先是学习好基础知识,而后通过不断的实战来提升我们的编程技巧和逻辑思维。这一块学习是持续的,直到我们真正掌握它并且能够灵活运用它。如果最开始学习一两遍之后,发现暂时没有提升的空间,我们可以暂时放一放。继续下面的学习,javascript贯穿我们前端工作中,在之后的学习实现里也会遇到和锻炼到。真正学习起来并不难理解,关键是灵活运用。
mgtp.com/2024/03/13/H4lCoPEF.jpg" />
最后
javascript是前端必要掌握的真正算得上是编程语言的语言,学会灵活运用javascript,将对以后学习工作有非常大的帮助。掌握它最重要的首先是学习好基础知识,而后通过不断的实战来提升我们的编程技巧和逻辑思维。这一块学习是持续的,直到我们真正掌握它并且能够灵活运用它。如果最开始学习一两遍之后,发现暂时没有提升的空间,我们可以暂时放一放。继续下面的学习,javascript贯穿我们前端工作中,在之后的学习实现里也会遇到和锻炼到。真正学习起来并不难理解,关键是灵活运用。
[外链图片转存中…(img-LS7sdc4m-1712449244818)]
[外链图片转存中…(img-Z74X73so-1712449244818)]