众所周知,前端内容多而杂,经过查阅各种资料,总结了一些知识点,以备后续复习使用。文章分为上(html,css)中(js)下(vue)三部分。
html应该是前端中最简单的知识点了,标签用着用着就熟记于心,在面试过程中对html的提问更是少之又少,话不多说,上干货。
学习css重点就是清楚的了解布局,给你一个页面,你能一眼知道这个页面如何布局。
扩展
:
伪元素:::before
,::after
,::first-line
,::first-letter
,::selection
、::placeholder
原因
解决方案
在浮动元素末尾加一个空标签,设clear:both
父级添加overflow:hidden
使用after伪元素
:after {
content:’’,
dispaly:block,
height:0,
visibilty:hidden,
clear:both,
}
箭头向下的三角为例
width : 0
height : 0
border : 6px solid transparent
border-top : 6px solid red
display:none //不显示对应元素,在文档中不占位置
visibilty:hidden //隐藏对应元素,在文档中仍保留位置
opacity:0 //隐藏元素,占位置,可添加事件
scroll //必会出现滚动条
auto //子元素内容大于父元素,显示滚动条,超出显示,不超出不显示
visible //溢出内容出现在父元素之外
hidden //溢出隐藏
white-space: nowrap //(强制一行显示)
overflow: hidden //(溢出隐藏)
text-overflow: ellipsis //(显示省略标记)
-webkit-line-clamp:2 //(用来限制在一个块元素显示的文本的行数)
display: -webkit-box//(将对象作为弹性伸缩盒子模型显示)
overflow: hidden;
-webkit-box-orient: vertical; //(设置对齐模式)
text-overflow: ellipsis //(以用来多行文本的情况下,用省略号“…”隐藏超出范围的文本)
* {
padding:0;
margin:0;
}
word-wrap:break-word。
<div class="father">
这里是父容器
<div class="child">
这里是子容器
</div>
</div>
.father {
width: 200px;
height: 200px;
background: yellowgreen;
position: relative;
}
.child {
width: 100px;
height: 100px;
background: red;
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%);
}
<div class="father">
<div class="child">这里是子div</div>
</div>
.father {
width: 200px;
height: 200px;
background: yellowgreen;
display: flex;
justify-content: center;
align-items: center;
}
.child {
width: 100px;
height: 100px;
background: slateblue;
}
<body>
<div class="center">这里是div</div>
</body>
.center {
width: 200px;
height: 200px;
background: yellowgreen;
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
margin: auto;
}
触发条件: 根层叠,html本身的层叠 position非static css3的新特性:
auto
或者0
时,后出现的覆盖前面的;参考文章juejin.cn/post/717980… 水平居中:
行内元素给父元素设置text-align:center
定宽:margin:0,atuo
定宽:absolute,left:50%,margin-left:-1/2宽度
不定宽:父:flex,子:margin:0,auto
不定宽:父。flex,justify-content: center
垂直居中
单行文本:line-height:高度
定高:margin:auto , 0
定高:absolute,top:50%,margin-top
不定高:父:flex,子:margin:auto,0
不定高:父:flex,align-items: center
水平垂直居中
子元素为块级元素:父:flex,子:margin:auto
子元素未知:display:flex;justify-content: center;align-items: center
子元素用绝对定位,上下左右为0,margin:auto,父:relative,
transform: scale(0.7);相对于12px缩小0.7
水平有限,如有错误,敬请指正。