- Published on
css样式
不同浏览器实现css3功能的时间不一样,
如chrome先实现了之后会在属性前加-webkit前缀,
介绍
当所有浏览器都实现了css某一个属性,chrome会随着版本更新,同时支持 -webkit 和 无-webkit前缀。
| Prefix | Browser | | ------- | ------------- | | -webkit | chrome safari | | -moz | Firefox | | -ms | IE | | -o | Opera |
Can i use查看css各个浏览器版本的支持情况。
预处理器 pre-processor
less/sass cssNext插件(炒的比较火) 定义了一些语法,让css写的更方便。
cssNext用来实现一些未来的标准(未完全在各大浏览器实现的功能)
后处理器 post-processor autoprefixer
Postcss: 用js实现的css的抽象语法树(AST)
小米商城css
对应github项目 https://github.com/taoztw/xiaomi
css查阅指南https://developer.mozilla.org/zh-CN/docs/Learn/CSS
如下内容为一些要点,资料记录
head 部分
<!-- 修改页面favicon-->
<link rel="shortcut icon" href="./img/favicon.ico" type="image/x-icon" />
<!-- 导入css-->
<link rel="stylesheet" href="./css/common.css" />
common css
* {
margin: 0;
padding: 0;
/* 消除ul 左边的小点 */
list-style: none;
box-sizing: border-box;
}
| list style | list style=none | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | | | |
> ul>li\*10>{选项}
/* 示例 */
.box {
width: 100px;
height: 200px;
padding: 50px;
box-sizing: border-box;
}
| box-sizing: content-box | box-sizing: border-box | | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ | | | | | .box | |
对于content box 设置width height时是对 content区域进行设置,不包含padding 和 border的大小
a标签处理
a {
/* 去除a元素的下划线 */
text-decoration: none;
/* 继承父元素的颜色 */
color: inherit;
}
a:hover {
color: #ff6700;
}
html
html {
color: #333;
min-width: 1226px;
font:
14px/1.5 'Helvetica Neue',
Helvetica,
Arial,
'Microsoft Yahei',
'Hiragino Sans GB',
'Heiti SC',
'WenQuanYi Micro Hei',
sans-serif;
}
浮动
https://www.programfarmer.com/articles/2019/css-float-and-flex
当一个元素中的CSS 有
clear
属性时,就会「 清除该元素上方所遭遇的浮动情况」,因此就不会忽略其上方的元素高度,进而回到垂直排列的正常状况。也就是说,如果在Footer 加上clear: both
,就能让Left / Right 区块的浮动情况消失(能再度看见height ),所以排版会再度回复正常。
.fl {
float: left;
}
.fr {
float: right;
}
.clearfix::after {
content: '';
display: block;
clear: both;
}
文字垂直居中
line-height 设置为父容器的高度就可以垂直居中了
想要文本水平居中设置text-align:center即可。
https://segmentfault.com/a/1190000005122321
如果一段文本的高度为16px,如果给他设置line-height的高度为200,那么相当于,文本的上下间距的高度增加了,但是文本本身的高度依然是16是不变的,并且一直默认在行框中垂直居中,而上间距和下间距平分了200px的高度并且减去文本本身的高度。所以,容器被这一行文本占满,而本身文字在自己的一行中是垂直居中的,所以看起来就像是在容器中垂直居中。