尽管box-sizing在CSS3中才被引入,其有一个值是border-box,让元素的高和宽包含了填充和边框。
.div { width: 150px; height: 100px; border: 1px solid #ccc; box-sizing: border-box;}
Chrome 31+, IE8+, Firefox 31+, Safari 7+, Opera 27+, iOS Safari 7.1+ and Android Browser 4.1+等都支持该属性。
如果元素没有定位属性,如static/absolute/relative/fixed,改属性将被忽略
position: relative;z-index: 100;
可以使用pointer-event属性的一个none值来有效的禁用元素。不管是JQuery还是JavaScript,点击事件都不会被触发
.bricked { pointer-events: none;}
Chrome 31+, IE11+, Firefox 31+, Safari 7+, Opera 27+, iOS Safari 7.1+ and Android Browser 4.1+支持该属性
阻止长链接溢出父元素
a { word-wrap: break-word;}
ps:相关文章:CSS换行
可以用下面的媒体查询检测Retina显示屏
@media (min-device-pixel-ratio: 2), (min-resolution: 192dpi) { /* Retina CSS */ }
除了IE,filter属性被广泛的支持,但可能会被Spartan支持。在接下来的几十年,它会是一个大事件。
.blur { filter: blur(30px);}
Chrome 31+, Firefox 35+, Safari 7+, Opera 27+, iOS Safari 7.1+ and Android Browser 4.4+等支持该属性
可以在一个元素中用省略号来缩短长文本
.whatever { overflow: hidden; text-overflow: ellipsis; }
有时你需要一个空元素去遵循它的宽度属性,可以这样做:
.whatever { min-height: 1px;}
@supports查询和@media查询类似,若浏览器支持,则给定的CSS将会显示。目前,IE和Safari不支持该属性,但不久后就会改变。Spartan承诺支持该属性,值得期待
@supports (display: flex) { /* flexbox CSS */ }@supports not (display: flex) { /* CSS for no flexbox */ }
Chrome 31+, Firefox 31+, Opera 27+ and Android Browser 4.4+等支持该属性。
PS:
在知乎的一个专栏上介绍了三个奇淫技巧,很有用,补充在此文后面:
关于CSS[几乎]没人知道的3件事
英文原文:Some CSS you may not know
译文出处:一些你不知道的CSS属性