sass怎么自动编译生成css
less,sass等CSS预处理语言,最后都编译成相应的CSS,那它们存在的意义是啥?
less,sass等CSS预处理语言,最后都编译成相应的CSS,那它们存在的意义是啥?
简化开发工作,降低心智负担。
比如:
设计要求,在主要结构(.main)的表单(.form)下面的主按钮()颜色是蓝色,鼠标放上去变成淡蓝色,如果是其他按钮(没有.primary)则不变色。
用css得这么写:
.main .form .btn {
background-color: blue
}
.main .form {
background-color:lightblue
}
用scss可以这么写:
.main .form .btn{
background-color:blue
{
background-color:lightblue
}
}
看上去好像没少多少?
如果设计给你来几个新的需求,比如危险操作按钮(.danger)是红色、无效按钮(.disabled)是灰色... 多了几种细分情况,css就要连带着“.main .form .btn”这一段多写几次。
等到要写一个组件库了,你就会发现,只写css的话,样式库的代码会让人极其头疼,还不好写注释。
此外,css经常需要在类似的组件之间添加相似的属性,如果单纯写css的话,一段代码可能要粘贴无数遍,这也是写代码的大忌,一旦复制粘贴的这段代码有哪里要改的,你就要同时改无数个地方;而less、scss都有代码复用的方法,可以有效避免这种尴尬情况。
除此之外还有很多细节上的优势这里就不细讲了。
我的习惯是哪怕再小的东西(包括平常练手的小作品)都要用scss这种预处理而不是直接写css,这年头谁写css啊.png。
前端开发好找工作吗?
目前,有两三年前端工作经验,加上大专及以上学历,会好找工作。现在专业的前端工程师的需求量很大。
对于题主的情况,我有三点建议:
第一,展示前端成果。前端知识学一年不同于做一年,我面试时,会关注应聘者做了什么、做了多久。如果应聘者有github,看一看代码,就可以大致评估出他的能力,准确又节约时间。题主如果有精力,可以在github上放些自己的成果,这会加分不少。
第二,要了解技术细节。应聘者不适合说前端擅长的是js,因为js的技术点非常多。要是擅长js,我一般不信,我会挑难点问,要是都答上来,那是真牛。我期望得到的回答是“ajax原理和应用”、“jquery的应用”、“backbone.js”等框架、“性能优化”,等等。
第三,要懂编程和计算机相关的基础理论。应聘初级前端工程师,我不会关注这个方面。要是中级及以上,就必须懂这些。比如计算机网络的http协议,这是前端十分依赖的基础知识。算法和数据结构是深入js编程的基础。对于中高级工程师,如果不懂这些,连基本的前端性能优化都是做不了的。所以,前端工程师的知识和技能,不限于前端技术,也要懂编程理论和后端知识。
另外,题主应聘时候可以了解一下招聘方的招聘需求是不是很迫切,因为有些时候,招聘方并不是急需招人。