webpack配置css浏览器前缀
webpack打包时,css自动添加浏览器前缀。我们需要用到一个Loader:postcss-loader,和一个插件:autoprefixer
安装
npm i postcss-loader autoprefixer -D
方法一
1.在webpack.config.js文件中,找到module下的rules属性,在里面添加一个对象,完整代码如下:
module:{
rules:[
{
test:/\.scss$/,
use:['style-loader','css-loader','sass-loader','postcss-loader']
}
]
}
代码中,还有另外3个loader,因为use调用loader的顺序是从右往左的,所以顺序不能写错了,webpack打包.scss时,首先会调用postcss-loader为其添加浏览器前缀,(因为我代码中用了sass,所以引入了sass-loader),当浏览器前缀添加完后,sass-loader会把sass语法转换成css语法,在代码中,一般会有多个css文件,然而css-loader会将css文件整合成一段代码,这时,style-loader就会将这段代码,添加到页面的style标签中。
如果用的普通css,安装下面两个就行:
npm i style-loader css-loader -D
如果用的sass,需要安装如下依赖包:
npm i style-loader css-loader sass-loader node-sass -D
2.在webpack.config.js文件同级目录中,新建postcss.config.js文件,并且添加如下代码:
module.exports = {
plugins:[
require('autoprefixer')
]
}
配置完,直接打包运行即可。
方法二
直接把autoprefixer配置在postcss-loader里面
module:{
rules:[
{
test:/\.scss$/,
use:[
{loader:'style-loader'},//将css-loader整合在一起的代码,放在页面中的style标签里面
{loader:'css-loader'},//将各个css文件整合在一起
{loader:'sass-loader'},//将sass语法解析成css
{
loader:'postcss-loader',
options:{
plugins:[
require('autoprefixer')//postcss-loader会叫autoprefixer插件添加浏览器前缀
]
}
}
]
}
]
}
这里有个坑,一开始安装的autoprefixer版本是9.x的,但是配置后没有效果,之后换成7.x的就可以了。
webpack配置css浏览器前缀的更多相关文章
- webpack配置根据浏览器自动添加css前缀的loader
1.安装 postcss-loader autoprefixer npm install postcss-loader autoprefixer --save-dev 2.配置webpack.conf ...
- webpack配置css相关loader注意先后顺序
一.问题描述 在webpack3中,引入animate.css失败. 二.问题分析 1.难道是入口main.js引用方式不对? import animate from 'animate.css' 2. ...
- storybook配置之基本配置和webpack配置
默认配置 Storybook有一个默认的适合(suits)大型项目开发的webpack配置,假如你使用react app,他类似于创建一个react app的配置,并经过调整(tweaked ),使其 ...
- webpack配置:less/sass文件打包和分离、自动处理css前缀、消除未使用的css及完整的webpack.config.js文件
一.less文件打包和分离 1.要使用less,首先使用npm安装less服务:还需要安装Less-loader用来打包使用. npm install less --save-dev npm inst ...
- vue项目中postcss-pxtorem的使用及webpack中的配置 css中单位px和em,rem的区别
移动手机版要求我们在制作嵌入h5的时候去适配不同的手机.适配有多重模式,有flex.百分比等.字体大小的控制也有px.百分比.rem等单位,webpack中 px转rem. vue项目中postcss ...
- webpack通过postcss-loader添加浏览器前缀
在webpack中,我们可以很方便的使用autoprefixer来为css3属性添加不同的浏览器前缀. 首先,需要安装autoprefixer不用多说了,其次是安装postcss-loader(npm ...
- CSS变量和浏览器前缀
一.CSS变量 CSS变量是CSS的新特性,大多数浏览器都实现了这个功能,使用CSS变量有利代码复用,而且当我们修改变量值时,所有引用该变量的属性都会发生改变. 定义变量后可以有两种使用方法,第一种时 ...
- CSS常见的浏览器前缀
为了让浏览器识别某些专属属性,有时候需要在CSS属性前增加浏览器前缀 -ms-:Microsoft IE -moz-:Mozilla Firefox -o-:Opera Opera -webkit-: ...
- [译]Autoprefixer:用最可行的方式处理浏览器前缀的CSS后处理器
Autoprefixer,通过Can I Use数据库来确定哪些浏览器前缀是需要的,然后解析CSS文件,将前缀添加到CSS规则里. 你所要做的就是添加你的资源构建工具(比如:Grunt),然后你就可以 ...
随机推荐
- Java 流程控制语句 之 顺序结构
在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的.也就是说,程序的流程对运行结果 有直接的影响.所以,我们必须清楚每条语句的执行流程.而且,很多时候我们要通过控制语句的执行顺序来实 ...
- JavaScript 变量与注释
一.变量 ECMAScript 的变量是松散类型的,所谓松散类型就是可以用来保存任何类型的数据. 换句话说,每个变量仅仅是一个用于保存值的占位符而已.定义变量时要使用 var 操作符(注意 var 是 ...
- 【功能点】php导出excel
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明.本文链接:https://blog.csdn.net/qq_33862644/article/d ...
- 理解迭代器,生成器,yield,可迭代对象
原文:https://foofish.net/iterators-vs-generators.html 本文源自RQ作者的一篇博文,原文是Iterables vs. Iterators vs. Gen ...
- Vuex准备
(1)简介 每一个 Vuex 应用的核心就是 store(仓库).“store”基本上就是一个容器,它包含着你的应用中大部分的状态 (state).Vuex 和单纯的全局对象有以下两点不同: Vuex ...
- 项目Alpha冲刺随笔集合
班级:软件工程1916|W 作业:项目Alpha冲刺 团队名称:SkyReach 目标:完成项目Alpha版本 项目Github地址 评审表 团队博客汇总 队员学号 队员姓名 个人博客地址 备注 22 ...
- Convert PadLeft Bit Operate
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...
- 使用tensorflow时,关于GPU的设置
查看显卡使用情况: nvidia-smi 设置tensorflow按需分配资源: import os os.environ["CUDA_DEVICE_ORDER"] = " ...
- jsp request对象
getParameter( ) :返回name指定参数的参数值 String[] getParameterValues(String name) :返回包含参数name的所有值的数值 getA ...
- 什么是JSP?它和Servlet有什么区别?
21 什么是JSP?它和Servlet有什么区别?答:你可以将JSP当做一个可扩充的HTML来对待.虽然在本质上JSP文件会被服务器自动翻译为相应的Servlet来执行.可以说Servlet是面向Ja ...