咱们应该如何写好HTML&CSS

这应该是最容易让人忽略的一个问题,容易到不少工做几年的前端开发工程师都不太注意如何写好html及css
css

HTML&CSS 重要吗

相比于JavaScript,HTML&CSS确实凸显不出它的重要性,由于HTML&CSS不承载业务逻辑,具体来讲他们不能称之为编程语言,那HTML&CSS真的就那么简单到不起眼吗?html

布局是项目易维护的重要基础

当咱们拿到项目ui图后,建议你们不要一行一行的去画页面,这样不经效率低并且写出来的页面代码比较臃肿,下面是Element-ui的栅格布局及布局容器图:前端

一旦有了项目的大致架构,咱们就能够作到手里有粮心中不慌了
咱们以京东首页为例,来讲明下良好的布局应该是什么样子的

能够看到,我在首页任意调换两个div,页面的布局也跟着调换过来并且没有乱,这就是一个良好的布局。你也能够在本身的项目这样试一试

管理好CSS有助于提升项目性能

说到CSS咱们是势必要说到两个概念:重绘&重排编程

  • 重绘 重绘是指当 DOM 元素的属性发生变化 (如 color) 时, 浏览器会通知render 从新描绘相应的元素, 此过程称为重绘。
  • 重排 重排是指某些元素变化涉及元素布局 (如width), 浏览器则抛弃原有属性, 从新计算,此过程称为重排。(重排必定会重绘,重绘不必定重排)。

页面渲染的通常过程为JS > CSS > 计算样式 > 布局 > 绘制 > 渲染层合并而在这个过程当中其中,重排和重绘是整个环节中最为耗时的两环,从重绘和重排的概念上看,重排比重绘更加的消耗性能,因此咱们尽可能避免着这两个环节。从性能方面考虑,最理想的渲染流水线是没有布局和绘制环节的,只须要作渲染层的合并便可。浏览器

如何更好的写CSS&HTML

说了这么多,那在项目中应该怎么规划咱们的布局及样式呢,一下是我我的的总结,和你们分享sass

  • 首先定义项目的基准样式:如重置样式,公用样式变量,兼容性处理等,且最好用less/sass/stylus等来写咱们的css
  • 把项目的公共布局及样式抽离出来:如公用的头部,公用的尾部,公用的tab等
  • 避免样式重复赋值,避免样式重叠:如避免在业务或者组件里面写全局样式,样式层级不要过深
  • 用好z-index,position

最后

只要咱们在项目中花点心思管理好咱们的CSS和HTML,你会发现后面不少问题都会变的简单架构

相关文章
相关标签/搜索