【前端开发】优化代码之减少引入,css预编译语言的优点,stylus的使用

前言:我必须得承认在最最最开始的时候,我对于css的预编译是非常不以为然的,这是错误的。一般在页面编写过程中,我会将需要reset的css放在reset.css中,讲会需要重复用到的放置到public.css中,对于常用的几个数据,例如字体font-10,font-12,font-24,font-36,对于margin来说margin-top-10,margin-bottom-10等等,这样修改起来也非常方便,不过在看了(瞬间忘记了书名)以后,减少引入能够优化页面性能。

我们都知道,浏览器的工作原理,它向服务器端发送请求,服务器返回所请求的文件,那么显然文件越少越好。精灵图就是为了减少客户端向服务器发送请求。

在css中将公用的css文件复制到所需要的文件中是极为耗时并且不方便的,使用预编译语言能够解决这个问题,那么在页面引用中只需要引入当前页面对应css文件就可以了。

这里顺便介绍一下stylus预编译语言。

一、环境安装

stylus的安装依赖nodejs环境,因此需要先安装nodejs环境,这个怎么安装在上篇中有写到。

简单带过,就是进入nodejs官网,下载首页显示的最新版本,安装,完成以后打开cmd命令行,进入到当前目录文件夹中。

二、stylus安装

在控制面板中输入命令,npm install stylus -g

npm install stylus --save-dev

三、grunt构建工具和gulp构建工具

grunt比较复杂,这里就只简单介绍一下gulp,在上一篇介绍nodejs的博客中应该有提到gulp自动化构建工具。这里安装完成以后,需要一个gulpfile.js文件,在根目录下直接输入gulp会启动default任务命令。你可以再写一个default去调用,也可以在命令行输入调用任务名。

var gulp = require(‘gulp‘);var stylus = require(‘gulp-stylus‘);gulp.task(‘stylus‘, function(){
  return gulp.src(‘./assets/stylus/**/*.styl‘)
  .pipe(stylus())
  .pipe(gulp.dest(‘./assets/css‘));
});

四、重要的语法

导入:@import,(这就是我为什么突然痛改前非的原因!!!!)

@import "reset.css"

可以导入css可以导入stylus,当没有后缀名的时候,会认为导入的是stylus

@import"reset"

更多语法可以参考http://www.zhangxinxu.com/jq/stylus/import.php

时间: 2025-01-11 18:11:46

【前端开发】优化代码之减少引入,css预编译语言的优点,stylus的使用的相关文章

前端开发【第2篇:CSS】

鸡血 样式的属性多达几千个,但别担心,按照80-20原则,常用的也就几十个,你完全可以掌握它. Css初识 HTML的诞生 早期只有HTML的时候为了让HTML更美观一点,当时页面的开发者会把颜色写到标签里面,想想一下一堆标签一堆属性:颜色.字体等,总结一个字就是“乱” 为了解决这个问题,万维网联盟(W3C),这个非营利的标准化联盟,肩负起了 HTML 标准化的使命,并在 HTML 4.0 之外创造出样式(Style). 所有的主流浏览器均支持层叠样式表. CSS语法和CSS优先级 1.CSS

学好Web前端开发,必要了解的HTML+CSS的技巧有哪些

HTML+CSS的技巧有哪些?怎么学好Web前端开发?经过Web前端学习的一个过程,每个人都会对前端的认识逐渐由浅入深,由一开始僵硬地使用标签和标签属性进行简单网页布局,到最后能够对网页进行丰富的CSS渲染,逐渐不断成长起来.接下来给大家分享一下阶段学习技巧. 1.合理清晰的HTML文档结构有着重要的意义. 首先,这有利于自己写CSS时选择标签;其次,这方便别人阅读自己的代码;最后,合理的使用语义化标签,也能让方便各大搜索引擎的收录. 2.对标签添加浮动对网页横排有着非常重要的意义. 一开始接触

CSS预编译语言-LESS

LESS的作用 CSS层叠样式表,它是标记语言,不是编程语言:所有的预编译CSS语言(less/sass-)都是赋予了CSS的面向对象思想 LESS的编译 LESS叫做预编译CSS:写好的LESS代码浏览器是不能渲染的,需要我们把它编译成为能渲染的CSS才可以 开发环境 在本地开发中这是开发环境 生产环境 本地开发完成了,我们需要把代码上传到服务器上,服务器上的环境叫做生产环境 在开发环境下,我们一般都通过导入LESS插件(less-2.5.3.min.js)来随时编译LESS代码 <!--re

Web前端开发基础 第四课(CSS一些性质)

继承 CSS的某些样式是具有继承性的,那么什么是继承呢?继承是一种规则,它允许样式不仅应用于某个特定html标签元素,而且应用于其后代.比如下面代码:如某种颜色应用于p标签,这个颜色设置不仅应用p标签,还应用于p标签中的所有子元素文本,这里子元素为span标签. p{color:red;} <p>三年级时,我还是一个<span>胆小如鼠</span>的小女孩.</p> 可见右侧结果窗口中p中的文本与span中的文本都设置为了红色.但注意有一些css样式是不具

Web前端开发基础 第四课(CSS元素模型)

css布局模型 清楚了CSS 盒模型的基本概念. 盒模型类型, 我们就可以深入探讨网页布局的基本模型了.布局模型与盒模型一样都是 CSS 最基本. 最核心的概念. 但布局模型是建立在盒模型基础之上,又不同于我们常说的 CSS 布局样式或 CSS 布局模板.如果说布局模型是本,那么 CSS 布局模板就是末了,是外在的表现形式. CSS包含3种基本的布局模型,用英文概括为:Flow.Layer 和 Float.在网页中,元素有三种布局模型:1.流动模型(Flow)2.浮动模型 (Float)3.层模

Web前端开发基础 第四课(CSS文字和段落排版)

文字排版--字体 我们可以使用css样式为网页中的文字设置字体.字号.颜色等样式属性.下面我们来看一个例子,下面代码实现:为网页中的文字设置字体为宋体. body{font-family:"宋体";} 这里注意不要设置不常用的字体,因为如果用户本地电脑上如果没有安装你设置的字体,就会显示浏览器默认的字体.(因为用户是否可以看到你设置的字体样式取决于用户本地电脑上是否安装你设置的字体.)现在一般网页喜欢设置“微软雅黑”,如下代码: body{font-family:"Micro

Web前端开发基础 第四课(CSS小技巧)

水平居中设置-行内元素 我们在实际工作中常会遇到需要设置水平居中场景,今天我们就来看看怎么设置水平居中的. 如果被设置元素为文本.图片等行内元素时,水平居中是通过给父元素设置 text-align:center 来实现的.如下代码: html代码: <body> <div class="txtCenter">我是文本,哈哈,我想要在父容器中水平居中显示.</div> </body> css代码: <style> div.txt

Web前端开发基础 第四课(CSS元素分类)

元素分类 在讲解CSS布局之前,我们需要提前知道一些知识,在CSS中,html中的标签元素大体被分为三种不同的类型:块状元素.内联元素(又叫行内元素)和内联块状元素. 常用的块状元素有: <div>.<p>.<h1>...<h6>.<ol>.<ul>.<dl>.<table>.<address>.<blockquote> .<form> 常用的内联元素有: <a>

关于js(二)----------------分享前端开发常用代码片段

一.预加载图像 如果你的网页中需要使用大量初始不可见的(例如,悬停的)图像,那么可以预加载这些图像. 二.检查图像是否加载 有时为了继续脚本,你可能需要检查图像是否全部加载完毕. 你也可以使用 ID 或 CLASS 替换<img> 标签来检查某个特定的图像是否被加载. 三.自动修复破坏的图像 逐个替换已经破坏的图像链接是非常痛苦的.不过,下面这段简单的代码可以帮助你. 四.悬停切换 当用户鼠标悬停在可点击的元素上时,可添加类到元素中,反之则移除类. 只需要添加必要的 CSS 即可.更简单的方法