写在前面:
sass 是 css 预编译语言,使用 sass 在团队合作和项目管理上有很大的优势,所以,目前使用广泛。
关于 sass 的学习,我之前的一篇已经非常详细了。
传送门: Sass教程
=====================================================================
我准备向你们提出一个你们不可能拒绝的条件,有了compass,sass才迎来了它真正的辉煌。
compass 是什么?为什么要学习 compass ?
compass 是一个 sass 的库,compass 里面有很多封装好的 mixin ,有了它,我们就可以很快的写出完美的,兼容的 样式。
举个例子1:
我们要做一个横向排布包含导航链接的列表,类似这样:
首先,我们的 html 是这样的:
<ul class="nav"> <li><a href="/">Home</a></li> <li><a href="/services">Services</a></li> <li><a href="/blog">Blog</a></li> <li><a href="/contact">Contact</a></li> </ul>
然后写 CSS :
ul.nav { border: 0; margin: 0; overflow: hidden; padding: 0; } ul.nav li { display: inline; float: left; margin-left: 0; padding-left: 4px; padding-right: 4px; }
OK,并不是很难,CSS 本身就是这样。
但是,如果我们有了 compass 以后,我们的工作是这样的:
ul.nav { @include horizontal-list; }
难以置信的简单。
我们再来看一下使用了这个以后,编译后的 css 样式:
ul.nav { margin: 0; padding: 0; border: 0; overflow: hidden; *zoom: 1; } ul.nav li { list-style-image: none; list-style-type: none; margin-left: 0; white-space: nowrap; display: inline; float: left; padding-left: 4px; padding-right: 4px; } ul.nav li:first-child, ul.nav li.first { // .first是针对低版本浏览器的 padding-left: 0; } ul.nav li:last-child, ul.nav li.last { // .last是针对低版本浏览器的 padding-right: 0; }
可以发现 compass 编译出来的 css 更健壮。
对于支持 :first-child 和 :last-child 的浏览器,我们略去了两边元素对外的内边距。而对低版本浏览器,我们可以使用 .first 和 .last 这两个类名。
举个例子2:
把文字处理成图片显示出来。
h1.mokayu { text-indent: -119988px; overflow: hidden; text-align: left; background-image: url('/images/mokayu-header.png'); background-repeat: no-repeat; background-position: 50% 50%; }
第一步是对默认的文字设置一个负值的缩进将其隐藏起来。然后通过 background 属性把文本转换成图片。
Compass 通过 replace-text 辅助器把这件事情变得更简单了:
h1.mokayu { @include replace-text('mokayu-header.png'); }
通过这两个例子,我们已经体会到了 compass 的威力了。
========================================================================
Compass 七大模块
-
Reset
-
Layout
-
CSS3
-
Helpers
-
Typography
-
Utilities
-
Browser
Compass 核心模块
-
Reset
-
Layout
为什么要将这两个模块单独拿出来说呢?
因为只要引入了 compass(@compass) 就默认引入了 compass 的其他五大模块
CSS3 Helpers Typography Utilities Browser
只有这两个模块需要单独引入。
@import "compass/reset"
@import "compass/layout"
最后
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Android工程师,想要提升技能,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。
因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Android开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
id开发知识点!不论你是刚入门Android开发的新手,还是希望在技术上不断提升的资深开发者,这些资料都将为你打开新的学习之门!**
如果你觉得这些内容对你有帮助,需要这份全套学习资料的朋友可以戳我获取!!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!