大家学习的时候都会总结自己的一套js库,会封装一些拖拽、运动等方法,也会把解决浏览器兼容的一些方法封装成函数,这样很好。
我觉得css属性也需要我们在学习中总结,css有些属性容易忘记(尤其英语不好的同学),去查api,有时候api还不好使,所以我觉得有必要把自己觉得会忘记的,好用的css属性总结一下,以后方使用的时候查看,在以后的学习、工作中会慢慢补充,使你的武器库更强大。
1、 outline
清除input元素默认的外边框
<input placeholder ="你试试 点这个框框"/>
div {
outline: none; //一般情况下移除它
outline: 5px dotted red; //也可以设置样式
}
2、 contenteditable
设置element是否可编辑
<p contenteditable="true">可编辑</p>
作用:div、p等标签在网页上是不可以输入东西的;设置了这个属性,div、p就好像变成了input一样;
3、webkit-playsinline
手机video 都可以在页面中播放,而不是全屏播放了。
<video src="test.mp4" webkit-playsinline="true"></video>
4、 position: absolute, 让margin有效的
设置left:0, right:0 margin: 0 auto; 就可以。原因是2边都是0不存在边距,element就可以得出距离,并居中。
div {
position: absolute;
left: 0;
right: 0;
margin: 0 auto;
}
5、 user-select 禁止用户选中文本
div {
user-select: none; /* Standard syntax */
}
6、 清除手机tap事件后element 时候出现的一个高亮
* {
-webkit-tap-highlight-color: rgba(0,0,0,0);
}
7、::-webkit-scrollbar-thumb
可以修改浏览器的滚动条样式。IE火狐可能不支持。
8、 -webkit-appearance:none
移除浏览器默认的样式,比如chrome的input默认样式,然后就可以定义需要的样式。
input, button, textarea, select {
*font-size: 100%;
-webkit-appearance:none;
}
9、 使用CSS transforms 或者 animations时可能会有页面闪烁的bug
-webkit-backface-visibility: hidden;
10、 -webkit-touch-callout 禁止长按链接与图片弹出菜单
-webkit-touch-callout: none;
11、perspective 透视
这个属性的存在决定你看到的元素是2d还是3d。一般设置在包裹元素的父类上。
.div-box {
perspective: 400px;
}
12、 css实现不换行、自动换行、强制换行
//不换行
white-space:nowrap;
//自动换行
word-wrap: break-word;
word-break: normal;
//强制换行
word-break:break-all;
13、css3 linear-gradient 线性渐变
默认开始在top, 也可以自定义方向。
div {
linear-gradient(red, yellow)
}
background: linear-gradient(direction, color-stop1, color-stop2, ...);
14、常用的选择器 :nth-child() Selector
选择父类下第一个子节点,p元素
p:nth-child(1) {
...
}
15、 -webkit-font-smoothing 字体抗锯齿
使用该属性能让页面上的字体变得清晰,但是也会造成font-weight: bold 加粗变得异常。不信你试试...
div {
-webkit-font-smoothing: antialiased;
}
更新3-31
16、CSS3 filter Property 图片过滤
img {
filter: grayscale(100%); //灰度
filter: blur(5px); //模糊
filter:brightness(200%); //高亮
filter:saturate(8); //饱和
filter:sepia(100%); //怀旧
...
}
移动端可以使用,IE兼容不好。更多请看
17、 使用css创建三角形
这个很多面试题好像问到,但实际中我也确实使用了。
div {
border-bottom: 10px solid white;
border-right: 10px solid transparent;
border-left: 10px solid transparent;
height: 0px;
width: 0px;
}
transparent 透明
18、clip属性,截取你想要显示的图片
img {
position: absolute;
clip: rect(0px,60px,200px,0px);
}
19、设置文字,字母间距,很实用 letter-spacing
h1 {
letter-spacing: *px; //也可以是负数
}
20、图片运动过程中,图片模糊问题
在animation过程中,图片会出现模糊的情况,可以设置如下在图片上面。
transform: translate3d(0, 0, 0);
最后
大家也可以吧自己觉得有用的属性分享出来,天下文章一大抄,大家可以把上面的代码复制到自己的笔记中,目的是方便大众;而不是其他的什么。
网友评论