关闭

如何能提高CSS编写技巧?提高Web前端开发效率

时间: 2019-09-13阅读: 738标签: 技巧

如何能提高css编写技巧?怎么学好Web前端开发?很多人在学习Web前端时,刚开始都会学习htmlcsshtml用于文本内容,CSS用于样式设计,掌握这两部分知识就可以进行简单的页面制作。不过如果耗时过长作品一般未免有些得不偿失,因此你需要掌握一些技巧,以提高CSS编写效率。


1、使用flex进行布局

flex弹性布局的出现是有原因的。浮动和inline-block虽然也能实现很多的布局效果,但它们本质上是文本和块元素布局的工具,而不是面向整个网页的。flex可以很容易的按照我们预期的方式创建布局。

flex拥有一组面向“弹性容器”的属性和一组面向“弹性项目”的属性,一旦你学会了它们,做任何响应式布局都是小菜一碟。目前各类浏览器的最新版本对flex的支持性也是没有任何问题的,所以你应该多多使用flex布局。


2、注意外边距折叠

与其他大多数属性不同,上下的垂直外边距margin在同时存在时会发生外边距折叠。这意味着当一个元素的下边缘接触到另一个元素的上边缘时,只会保留两个margin值中较大的那个。

解决外边距折叠的方法有很多种,对于初学者来说最简单的就是所有元素只使用一个方向上的margin,比如上下的外边距我们统统使用margin-bottom。


3、所有元素设置为Border-box

大多数初学者都不知道box-sizing这个属性,但实际上它非常重要。box-sizing属性有两个值:

1)content-box(默认)。当我们设置一个元素的宽度或高度时,就是设置它的内容的大小。所有的padding和边框值都不包含。例如,一个div的宽度设置为100,padding为10,于是这个元素将占用120像素(100+2*10)。

2)border-box。padding与边框包含在元素的宽度或高度中,一个设置为width: 100px和box-sizing:。border-box的div元素,它的总宽度就是100px,无论它的内边距和边框有多少。

将所有元素都设置为border-box,可以更轻松的改变元素的大小,而不必担心padding或者border值会将元素撑开变形或者换行显示。


4、重置元素的CSS样式

不同浏览器对于各种元素的默认样式存在很大的差异,解决这个问题的最佳办法是在CSS开头为所有的元素设置通用的CSS, Reset重置代码。这样你是在没有任何默认内外边距的基础上进行布局,产生的效果也就是统一的。

网络上已经有成熟的CSS代码库为我们解决浏览器不一致问题,例如normalize.css、minireset和ress,你可以在你的项目中引用它们。


5、更友好的注释

CSS也许不是一种编程语言,但其代码仍然需要文档化。添加一些简单的注释可以将代码分类区分,方便自己和同事后期维护。需要注意的是,CSS中没有//注释,只有/**/注释。


6、将图片作为背景

当给页面添加图片时,尤其需要图片是响应式的时候,最好使用background属性来引入图片,而不是标签。这看起来使用图片会更复杂,但实际上它会使设置图片的样式变得更加容易。有了background-size, background-position和其它的属性,保持或改变图片原始尺寸和宽高比会更方便。

background引入图片的一个缺点是页面的Web可访问性会受到轻微的影响,因为屏幕阅读器和搜索引擎无法正确地获取到图像。这个问题可以通过CSS object-fit属性解决,到目前为止除了IE浏览器其他的浏览器都可以使用object-fit。


7、不要DIY,多使用代码库

CSS社区非常庞大,不断有新的代码库出现。它们有各种用途,从微小的片段到构建响应式应用程序的整体框架。其中大多数也是开源的。下一次当你面对一个CSS问题时,在你试图费尽全力解决它之前,检查一下Github或Codepen上是否已经有了一个可用的解决方案。


8、使用AutoPrefixer达到更好的兼容性

浏览器前缀是CSS中最烦人的事情之一,每个属性需要的前缀是不一致的,你永远不知道到底需要哪一个,如果真的要把它一个一个手动添加到样式表中,那无疑是一个无聊的噩梦。

值得庆幸的是,有工具可以自动为我们提供添加浏览器前缀的功能,甚至可以决定需要支持哪些浏览器:

在线工具:Autoprefixer
文本编辑器插件:Sublime Text、Atom
代码库:Autoprefixer (PostCSS)


9、压缩CSS文件

为了提高网站和应用程序的加载速度和页面负载,应该使用压缩后的资源。压缩版本的文件将删除所有空白和重复,从而减少总文件的体积。当然,这个过程也会使样式表完全不可读,所以要在生产环境中使用.min版本,同时为开发保留常规版本。市场上有许多不同的方法来压缩CSS代码:

在线工具:CSS Minifier、CSS Compressor
文本编辑器插件:Sublime Text、Atom
代码库:Minfiy (php)、CSSO、CSSNano(PostCSS、Grunt、Gulp)


10、验证

验证CSS可能不像验证HTML或JavaScript代码那么重要,但是通过工具运行一下你的代码仍然非常有用。它会告诉你是否犯了任何错误,警告错误的用法,并为您提供改进代码的提示。

就像压缩和Autoprefixer一样,有免费的工具可以利用:

在线工具:W3 Validator、CSS Lint
文本编辑器插件:Sublime Text、Atom
代码库:stylelint(Node.js、PostCSS)、css-validator(Node.js)


对于想要入行Web前端行业的人来说,就业是个大问题,也直接影响着各个的决定。因此,选择专业的学习比较好,不仅理论基础扎实,还有丰富的项目开发经验,有明确的职业规划和娴熟的面试技巧,为自身的快速就业提供了可能。

站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/5271

关闭

jQuery 中的 39 个技巧

我们为什么使用jQuery库呢?原因之一就在于我们可以使jQuery代码在各种不同的浏览器和存在bug的浏览器上完美运行。

移动端开发必须知道的小技巧

最近在公司写一个混合 app 项目,页面基本全部都是用 H5 完成,嵌入到原生 webview 下。发现一个问题,在 iPhone 6 下 苹果手机的状态栏会挡住页面,导致页面下移,样式错乱,最后网上查找了些解决办法,加了一条 meta 标签解决了问题

Javascript初学者应该知道的技巧和陷阱

Javascript 的sort()函数在默认情况下使用字母数字(字符串Unicode码点)排序。所以[1,2,5,10].sort() 会输出 [1, 10, 2, 5].要正确的排序一个数组, 你可以用 [1,2,5,10].sort((a, b) => a — b)

这些优化技巧可以避免我们在 JS 中过多的使用 IF 语句

最近在重构代码时,我发现早期的代码使用太多的 if 语句,其程度是我从未见过的。这就是为什么我认为分享这些简单的技巧是非常重要的,这些技巧可以帮助我们避免过多的使用 if 语句。

积极使用解构赋值以及箭头函数提升 Javascript 表现力

本文列举了一些日常会使用到的 Javascript技巧,可以明显提升代码的表现力。解构赋值首先,我们来看一下下面这段代码:数组解构赋值我们现在有三只动物

与开发团队高效协作的8个小技巧

开发团队是每一个产品经理和产品负责人的重要合作伙伴:是团队来设计和建造实际产品。但是,要高效地引导并与团队一起工作并不是一件容易的事情。这篇文章将分享8个使开发团队更高效合作的小技巧,从而提高创造成功产品的机会。

CSS水平或垂直居中技巧

css水平和垂直居中是一个亘古不变的话题,它常常出现在优美的网页上以及各大前端面试当中。说来惭愧,在两年前面试的时候,我完全不知道如何做到水平和垂直均居中的方法

Js应用技巧集合

这里我将会对这些应用技巧进行集中描述,如果你觉得遗漏了一些好用的应用技巧,也请在留言中提出,我会及时更新到这篇文章中的。

Webpack 技巧 - 联合 alias 和 mainFields 提高多库联调效率

目前在开发一个工程项目,考虑到可扩展性和功能解耦,将每个功能模块都单独拆分出来。在正式使用、单独维护某个功能包的时候没什么问题,最为头疼的是联调两个功能模块的时候,就比较掣肘了。

总结移动端H5开发常用技巧

安卓上会对符合邮箱格式的字符串进行识别,我们可以通过如下的 meta 来管别邮箱的自动识别:移动端 H5 项目越来越多,设计师对于 UI 的要求也越来越高,比如 1px 的边框。在高清屏下,移动端的 1px 会很粗。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!