登录

javascript - 关于多个页面css样式表问题

问各位大神个问题,我在网上找了好久没找到合适的答案

多个页面总的样式是一样的,共用一套样,但是每个页面又有各自的内容需要不同的样式,那这些各自的样式写在总的样式表里然后所有页面引用这同一个样式表,和单独写在一个样式文件另外引入加上公用样式表一共两个样式表,这两种方式哪个对速度和性能更好一些?

# JavaScript
黄舟 黄舟 2564 天前 359 次浏览

全部回复(7) 我要回复

  • 阿神

    阿神2017-04-11 13:08:16

    CSS文件的分类和引用顺序
    通常,一个项目我们只引用一个CSS,但是对于较大的项目,我们需要把CSS文件进行分类。

    我们按照CSS的性质和用途,将CSS文件分成“公共型样式”、“特殊型样式”、“皮肤型样式”,并以此顺序引用(按需求决定是否添加版本号)。

    公共型样式:包括了以下几个部分:“标签的重置和设置默认值”、“统一调用背景图和清除浮动或其他需统一处理的长样式”、“网站通用布局”、“通用模块和其扩展”、“元件和其扩展”、“功能类样式”、“皮肤类样式”。
    特殊型样式:当某个栏目或页面的样式与网站整体差异较大或者维护率较高时,可以独立引用一个样式:“特殊的布局、模块和元件及扩展”、“特殊的功能、颜色和背景”,也可以是某个大型控件或模块的独立样式。
    皮肤型样式:如果产品需要换肤功能,那么我们需要将颜色、背景等抽离出来放在这里。

    <link href="assets/css/global.css" rel="stylesheet" type="text/css"/>
    <link href="assets/css/index.css" rel="stylesheet" type="text/css"/>
    <link href="assets/css/skin.css" rel="stylesheet" type="text/css"/>
    CSS内部的分类及其顺序
    重置(reset)和默认(base)(tags):消除默认样式和浏览器差异,并设置部分标签的初始样式,以减少后面的重复劳动!你可以根据你的网站需求设置!
    统一处理:建议在这个位置统一调用背景图(这里指多个布局或模块或元件共用的图)和清除浮动(这里指通用性较高的布局、模块、元件内的清除)等统一设置处理的样式!
    布局(grid)(.g-):将页面分割为几个大块,通常有头部、主体、主栏、侧栏、尾部等!
    模块(module)(.m-):通常是一个语义化的可以重复使用的较大的整体!比如导航、登录、注册、各种列表、评论、搜索等!
    元件(unit)(.u-):通常是一个不可再分的较为小巧的个体,通常被重复用于各种模块中!比如按钮、输入框、loading、图标等!
    功能(function)(.f-):为方便一些常用样式的使用,我们将这些使用率较高的样式剥离出来,按需使用,通常这些选择器具有固定样式表现,比如清除浮动等!不可滥用!
    皮肤(skin)(.s-):如果你需要把皮肤型的样式抽离出来,通常为文字色、背景色(图)、边框色等,非换肤型网站通常只提取文字色!非换肤型网站不可滥用此类!
    状态(.z-):为状态类样式加入前缀,统一标识,方便识别,她只能组合使用或作为后代出现(.u-ipt.z-dis{},.m-list li.z-sel{}),具体详见命名规则的扩展相关项。
    功能类和皮肤类样式为表现化的样式,请不要滥用!以上顺序可以按需求适当调整。

    css规范参见网站:http://nec.netease.com/

    回复
    0
  • 阿神

    阿神2017-04-11 13:08:16

    项目开发时,各个文件可以分开,比如:

    1个公用样式文件

    若干个页面文件

    然后上线时,里用压缩工具将他们都压缩到一个css文件中,这样速度最快。


    如果你不想压缩,单论速度的话,那么在代码量同样的话,肯定是文件越少越快,因为页面减少响应文件。

    回复
    0
  • 怪我咯

    怪我咯2017-04-11 13:08:16

    曾经我也有这样的疑问,直到后来发现,根本没人在乎这玩意。

    你觉得哪个方便就用哪个

    回复
    0
  • 巴扎黑

    巴扎黑2017-04-11 13:08:16

    开发过程中,样式表分开,方便开发,
    上线部署时,利用各种打包部署工具,将样式表打包成一个css文件。

    回复
    0
  • 高洛峰

    高洛峰2017-04-11 13:08:16

    最好是组件化开发,公用的样式写在main.css里,每个组件都有单独的样式

    回复
    0
  • 黄舟

    黄舟2017-04-11 13:08:16

    如果你用的是less,可以把公用的单独提出来,提出一个公共的base.less,然后在每个私有页面去import,这样在写私有页面的时候只需要关注自己页面的私有样式。

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-11 13:08:16

    公用样式多,单独样式少的话,就统一放在一个文件里,如果网站大,页面和页面差距大,就分开写

    回复
    0
  • 取消 回复 发送