给所有浏览器的元素设置了一个共同的样式:Normalize.css

使用Normalize.css重置默认样式

CSS重置有助于根据所有设置的样式建立一个基准样式。样式重置有效重写了浏览器某些元素(在浏览器里有很大的不同)默认的样式。

尽管CSS resets在过去的几年里很受欢迎,但是,很多网站至今也没有使用,这些网站CSS的可扩展性因css resets会有很大的困难。

大多数人推荐使用normalize.css重置默认样式,而不是使用由Eric Meyer写的非常流行的CSS Reset或者自己写的Reset。Normalize.css给所有浏览器的元素设置了一个共同的样式,而不是重置了这些元素的基本样式。可以参考github上normlize.css项目,它具有以下优点,不仅仅是CSS样式重置:

  • 不像其他CSS resets,normalize.css保存了有用的默认设置
  • 大范围的规范了HTML元素样式
  • 纠正了浏览器间的一些bug及不一样的表现形式
  • 精心的改进提高了可用性
  • 使用详细的注释解释了代码的作用

使用normalize.css替代一个标准的reset会使你编写正确的代码,在重新设置基本样式上节省大量的时间。

使用LESS生成CSS

在复杂应用中,如果还手写CSS的话将是一件痛苦的事情,大量的class前缀,复用样式需要来回copy等等。为了更好的扩展性,这里建议在项目中引入LESSSass。这代表着:

  • 支持变量与简单运算
  • 支持CSS片段复用
  • class/id样式嵌套

等一些更像是编程语言的特性。这对于提高开发效率是效果非常明显的。

以LESS为例,简单介绍一下LESS在Windows下如何应用到这个项目中:

  1. 下载Nodejs并安装,nodejs会自动将自己加入系统路径。
  2. 在cmd运行 npm install -g less
  3. 然后就可以通过lessc指令将less源文件编译为css lessc avnpc.less avnpc.css
  4. 如果不使用nodeJs作为后端,最好在写LESS时采用watch模式,每次保存自动编译为css。这里需要安装一个辅助模块recess: npm install -g recess 然后运行watch recess avnpc.less:avnpc.css --watch

更多的LESS使用教学文章,可以下面两篇文章:

LESS介绍及其与Sass的差异

初步认识 LESS

时间: 10-10

给所有浏览器的元素设置了一个共同的样式:Normalize.css的相关文章

8 1 css 2 元素就是标签 2 内联样式 3 css选择器 style ,head ,内部样式表 4 外部样式表 css文件, link标签 ,href,

1 2 3 4 原文地址:https://www.cnblogs.com/anvivi/p/9694814.html

【温故而知新-Javascript】为DOM元素设置样式

1. 使用样式表 可以通过document.styleSheets属性访问文档中可用的CSS样式表,它会返回一组对象集合,这些对象代表了与文档管理的各个样式表. 每个样式表 都由一个CSSStyleSheet 对象代表,它提供了一组属性和方法来操作文档里的样式. 1.1 获得样式表的基本信息 第一步是获得定义在文档中的样式表的一些基本信息. <!DOCTYPE html> <html lang="en"> <head> <meta charse

浏览器渲染页面原理(看到一个网站写的不错 收录的,一起学习)

当了解web访问原理后,与前端工程师或页面重构师工作更为关系密切的应该是浏览器,WEB 页面运行在各种各样的浏览器当中,浏览器载入.渲染页面的速度直接影响着用户体验, 特别是浏览器渲染页面的原理,页面渲染就是浏览器将 HTML 代码根据 CSS 定义的规则显示在浏览器窗口中的这个过程,理解了原理就更会容易理解前端优化的一些准则. 主要过程:(主要参考文章:http://www.webskys.com/artilc/228.html) 1. 用户输入网址(假设是个 HTML 页面,第一次访问,无缓

【网络公开课总结】会飞的小鸟,removeClass() 方法从被选元素移除一个或多个类。

removeClass() 方法从被选元素移除一个或多个类.注释:如果没有规定参数,则该方法将从被选元素中删除所有类.语法$(selector).removeClass(class) 参数 class     可选.规定要移除的 class 的名称.如需移除若干类,请使用空格来分隔类名.如果不设置该参数,则会移除所有类. var bird = $("#dbird");  bird.removeClass().addClass('direction-' + code)#dbird 的样式

子元素设置margin-top,父元素也受影响

外边距合并问题常见于第一个子元素的margin-top会顶开父元素与父元素相邻元素的间距,而且只在标准浏览器下 (FirfFox.Chrome.Opera.Sarfi)产生问题,IE下反而表现良好.例子可以查看下面代码(IE下表现"正常",标准浏览器下查看出现"bug"): <!doctype html> <html> <head> <title>子元素设置margin-top,父元素也受影响</title>

HTML 中块级元素设置 height:100% 的实现

HTML 中块级元素设置 height:100% 的实现 当你设置一个页面元素的高度(height)为100%时,期望这样元素能撑满整个浏览器窗口的高度,但大多数情况下,这样的做法没有任何效果. 为什么height:100%不起作用呢? 按常理,当我们用CSS的height属性定义一个元素的高度时,这个元素应该按照设定在浏览器的纵向空间里扩展相应的空间距离.例如,如果一个div元素的CSS是height: 100px;,那它应该在页面的竖向空间里占满100px的高度. 而跟W3C的规范,百分比的

如何给before和after伪元素设置js效果

目录 [1]动态嵌入CSS[2]添加类名 [3]setAttribute [4]添加样式表 [5]修改样式表 前面的话 无法直接给before和after伪元素设置js效果 例子说明 现在需要为(id为box,内容为"我是测试内容"的div)添加(:before内容为"前缀",颜色为红色的伪类) <!DOCTYPE html> <html lang="en"> <head> <meta charset=&

jquery如何获取当前元素的下一个元素

jquery如何获取当前元素的下一个元素: 本章节介绍一下如何利用jquery获取当前元素的下一个元素,如何利用原生js获取下一个元素可以参阅原生js获取当前元素的下一个元素代码实例一章节, 下面直接看代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.51tex

jQuery获取当前元素的上一个元素

jQuery获取当前元素的上一个元素: 本章节介绍一下如何利用jquery获取当前元素的下一个元素,如何利用原生js获取下一个元素可以参阅原生js获取当前元素的上一个元素代码实例一章节, 下面直接看代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.51texia