PostCSS 已经被许多大公司使用:谷歌,推特,阿里巴巴和 Shopify。 Autoprefixer PostCSS 插件是最流行的 CSS 处理器插件之一。
PostCSS 可以作为预处理器使用,类似:Sass, Less 和 Stylus。但是 PostCSS 是模块化的工具,比之前那些快3-30 倍,而且功能更强大。
PostCSS 包括 CSS 解析器,CSS 节点树 API,一个源映射生成器和一个节点树 stringifier。
简而言之,PostCSS是CSS变成JavaScript的数据,使它变成可操作。PostCSS是基于JavaScript插件,然后执行代码操作。PostCSS自身并不会改变CSS,它只是一种插件,为执行任何的转变铺平道路。
本质上是没有很制PostCSS插件操纵CSS,也就是说它可以适用于任何CSS。只要你能想到的,你都可以编写一个PostCSS插件,让它来转成CSS。
PostCSS插件可以像预处理器,它们可以优化和autoprefix代码;可以添加未来语法;可以添加变量和逻辑;可以提供完整的网格系统;可以提供编码的快捷方式......还有很多很多。
事实上,使用PostCSS插件你可以做任何你想做的任何事情,但PostCSS相对而言还是较新,这也导致了一些误解,工具实际上是什么。
许多人(包括我自己在内)对PostCSS没有一个完整的印象,PostCSS实际是什么,并因此错过了PostCSS可以提供什么。
1. CleverCSSCleverCSS是个用于CSS开发的小型标记语言,从Python中得到灵感。可以开发出干净、结构清晰的样式表。在许多方面它比CSS2都更简洁、强大。
它与CSS最明显不同之处在于语法:CleverCSS采用了缩进式语法而不是对齐。这明显违背了Tim Peters写Python指导原则(The Zen of Python),不过不失为组织样式的一个好方法。
2. Sass
Sass令CSS又有趣起来,它对CSS3进行了扩展,增加了嵌套规则、变量、混入、选择器继承等语法,可以使用命令行工具或网络框架插件,将其转化为良好格式的标准CSS。
3. Sajax
Sajax是一种使用Ajax framework来构建网站的开源工具,它使得通过JavaScript调用PHP、Perl或Python函数更加简便,而不产生页面刷新。该工具为你做了99%的工作,没有理由不用。
4. Komodo Edit for Perl,Python,Tcl,PHP,Ruby,Javascript
Komodo Edit一个小型快速开源编辑器,要替换你信任已久的代码编辑器很难,但若给Komodo Edit一个机会,它一定不会让你失望的。
它支持Windows、Mac、Linux,支持PHP, Python, Ruby, JavaScript, Perl, Tcl, XML, HTML 5, CSS3语法着色、代码折叠、后台语法检查、超强的自动补全和calltips。
5. CSSTidy
CSSTidy是一个开源CSS转化和优化工具,它能在Windows、Linux、OSX下执行,可以像PHP脚本一样由每行代码来控制行为。
与其他大多数CSS转换工具相反,它不使用任何常规的表达式,从而CSSTidy能够对CSS2完美支持并提供高可靠性。
6. Less
Less是一种动态样式表语言,LESS将CSS进行了扩展,添加例如变量、混入、操作符以及函数语法。LESS能够依靠Node.js与Rhino运行于客户端和服务器端。
7. Vim
Vim是一个高度可配置的高效文本编辑器,被大多数的UNIX系统广泛使用,Vim是一个免费的慈善共享软件。
8. HSS
HSS是个扩展CSS语法的工具,拥有强大的特性,例如:变量、嵌套块。HSS是一个CSS编译器,它支持CSS语法验证,当在转换过程中出现语法错误时,它将指出错误具体出现在哪个文件的哪一行。
9. Zen Coding——一种开发HTML与CSS代码的全新方式
Zen Coding是一个高速HTML、XML、XSL编辑插件,该插件的核心是一个强大的缩写引擎,它允许你将扩展表达式(类似于CSS选择器)插入到HTML代码中。
10. XCSS
首个面向对象的Css Framework,能让你的工作流更加简洁,xCSS基于CSS,并在开发复杂样式提供处理面向对象的工作流。
11. Haml
Haml是一种简洁优美的模板语言,可以应用于Ruby on Rails、PHP等Web开发平台,可以大大缩减模板代码,减少冗余,提高可读性。并且Haml是一种完备的模板语言,没有牺牲当前模板语言的任何特性。Haml由Hampton Catlin发明并开发了Ruby on Rails上的实现。
12. Markup Generator
一个简洁的xhtml/css代码生成器。可免去你在进行最初的切片工作时编写一些无聊的框架代码之苦,加速开发过程。Markup Generator生成的xhtml标记和css代码非常直观,且语法简洁,你可以直接跳至元素的样式编写。
13. BluePrint
Blueprint是一个 CSS框架,旨在缩短你的开发时间。它可以让你用很整洁的代码来将页面划分成很复杂的网格结构(grid),提供合理的排版甚至打印样式,从而为接下来的项目构建提供一个扎实的基础。
Via 13 Most Used Speedy Tools To Write CSS And HTML Code
Pixel像素,相对长度单位。像素是相对于显示器分辨率而言。
相对长度单位,相对于 当前对象 内文本的字体尺寸,如当前对行内文本的字体尺寸未被设置,则相对于浏览器的默认字体尺寸。 任意浏览器的默认字体高都是16px。所有未经调整的浏览器都符合:1em = 16px。
由上可见,em的值并不是固定的,它的值跟其父级元素的字体大小紧密相关。
示例:
rem是CSS3新增的一个相对单位(root em,根em),这个单位与em有什么区别呢?
目前除IE8及更早版本外,所有浏览器均已支持rem。对于不支持的浏览器,可以多写一个绝对单位的声明。如此浏览器会忽略rem设定的字体大小。如下:
注意:
px、em、rem在线转换工具: http://pxtoem.com/
参考自: https://blog.csdn.net/qq_41893551/article/details/81258600