精华内容
下载资源
问答
  • webpack-tailwindcss 此模板旨在帮助您基于 Webpack + TailwindCSS 启动您的项目,同时保持最佳性能实践设置,因此您不必担心基础知识。 它为您设置了一些设置,因此您不必在文档、代码拆分和 ESBuild 构建中查找...
  • Nyan CSS Webpack加载器,将CSS模块(由css-loader提供)转换为组件(React / Preact / Vue.js / etc。)。 有关Nyan CSS和其他文档的介绍,请参见 。 进一步阅读以获取有关设置加载程序的说明。 安装 React/精确 ...
  • 仅HTML / CSS网站样板 Webpack 4 帕格 ... optimize-css-assets-webpack-plugin :最小化生成CSS。 pug和pug-loader :编译.pug文件导入的.html。 style-loader :在开发中用于启用CSS的HMR webp
  • 使用Webpack 5预先配置了TailwindCSS的React项目的样板。 如何使用 你可以跑步 npx degit gspalato/reactions 在您所需的目录上。 已知的问题 如果src/Assets/**/*内部没有任何内容,则该项目可能无法编译。 因此,...
  • 汇总+逆风 最初的 克隆此存储库使用yarn或npm安装依赖项 # With Yarn ... 要在生产模式下构建css和js文件(最小化) yarn build:prod 去做 添加开发服务器 转换构建生产模式以获得更好的性能(可选)
  • React项目的样板。 使用SASS / SCSS,Eslint,Prettier,TailwindcssV2等的React项目入门(JSX),所有这些...对于生产使用npm run build但是在我们需要清除所有我们在项目中未使用的顺风css属性之前,请使用npm run b
  • 组合:webpack,babel,postcss,打字稿,eslint。 项目设置 npm install 编译和热重装以进行开发 npm run serve -- or npm start 编译并最小化生产 npm run build 整理和修复文件 npm run lint 自定义配置 请参阅...
  • purifycss-webpack, 使用 web service删除未使用的CSS 插件web service的PurifyCSS 。这个插件使用 PurifyCSS 从你的CSS中删除未使用的选择器。 使用它与 extract-text-webpack-plugin服务。没有任何CS
  • 主要介绍了webpack分离css单独打包的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
  • postcss webpack3.0配置

    千次阅读 2017-11-06 09:58:59
    webpack.base.conf.js中如下配置: { test: /.less/, use: [ {loader: ‘style-loader’}, { loader: ‘css-loader’, options: { sourceMap:

    在webpack.base.conf.js中如下配置:
    这里写图片描述

    {
    test: /.less/,
    use: [
    {loader: ‘style-loader’},
    {
    loader: ‘css-loader’, options: {
    sourceMap: true, modules: true,
    localIdentName: ‘[local]_[hash:base64:5]’
    }
    },
    {
    loader: ‘postcss-loader’,
    options: {
    sourceMap: true,
    config: {
    path: ‘.postcssrc.js’ // 这个得在项目根目录创建此文件
    }
    }
    }
    ]

    }

    在.postcssrc.js中如下配置:

    module.exports = {
    plugins: [
    require(‘autoprefixer’)
    ]
    };

    .postcssrc.js放在根目录下

    展开全文
  • css module {ignore} 通过命名规范来限制类名太过死板,而css in js虽然足够灵活,但是书写不便。...2.大型项目往往会使用构建工具(webpack等)搭建工程 3.构建工具允许将css样式切分为更精细的模块 ...

    css module {ignore}

    通过命名规范来限制类名太过死板,而css in js虽然足够灵活,但是书写不便。
    css module 开辟一种全新的思路来解决类名冲突的问题

    思路

    css module 遵循以下思路解决类名的冲突问题:
    1.css的类名冲突往往发生在大型项目中
    2.大型项目往往会使用构建工具(webpack等)搭建工程
    3.构建工具允许将css样式切分为更精细的模块
    4. 同js的变量一样,每个css模块文件中很难初见冲突的类名,冲突的类名往往发生在不同的css模块中
    5. 只需要保证构建工具在合并样式代码后不会出现冲突即可
    在这里插入图片描述

    实现原理

    在webpack中,作为处理css的css-loader,它实现了css module的思想,要启动css module,需要将css-loader的配置modules设置为true
    css-loader 的实现方式如下
    在这里插入图片描述
    原理极其简单,开启了css module后,css-loader会将样式中的类名进行转换,转换为一个唯一的hash值。

    由于hash值是根据模块路径和类名生成的,因此,不同的css模块,哪怕具有相同的类名,转换后的hash值也不一样。在这里插入图片描述

    如何应用样式

    css module带来了一个新的问题:源代码的类名和最终生成的类名是不一样的,而开发者只知道自己写的源代码中的类名,并不知道最终的类名是什么,那如何应用类名到元素上呢?

    为了解决这个问题,css-loader会导出原类名和最终类名的对应关系,该关系是通过一个对象描述的

    在这里插入图片描述

    这样一来,我们就可以在js代码中获取到css模块导出的结果,从而应用类名了

    style-loader为了我们更加方便的应用类名,会去除掉其他信息,仅暴露对应关系

    其他操作

    全局类名

    某些类名是全局的、静态的,不需要进行转换,仅需要在类名位置使用一个特殊的语法即可:

    :global(.main){
        ...
    }
    

    使用了global的类名不会进行转换,相反的,没有使用global的类名,表示默认使用了local

    :local(.main){
        ...
    }
    

    使用了local的类名表示局部类名,是可能会造成冲突的类名,会被css module进行转换

    如何控制最终的类名

    绝大部分情况下,我们都不需要控制最终的类名,因为控制它没有任何意义

    如果一定要控制最终的类名,需要配置css-loader的localIdentName

    其他注意事项

    • css module往往配合构建工具使用
    • css module仅处理顶级类名,尽量不要书写嵌套的类名,也没有这个必要
    • css module仅处理类名,不处理其他选择器
    • css module还会处理id选择器,不过任何时候都没有使用id选择器的理由
    • 使用了css module后,只要能做到让类名望文知意即可,不需要遵守其他任何的命名规范

    练习

    
    webpack.config.js配置
    const HtmlWebpackPlugin = require('html-webpack-plugin')
    module.exports = {
        mode: "development",
        devtool: "source-map",
        module: {
            rules: [
                {
                    // test: /\.css$/, use: ["style-loader", {
                    //     loader: "css-loader",
                    //     options: {
                    //         // modules: {
                    //         //     localIdentName: "[local]-[hash:5]"
                    //         // }
                    //         modules:true
                    //     }
                    // }]
                    test: /\.css$/, use:["style-loader", "css-loader?modules"]
                }
            ]
        },
        plugins: [
            new HtmlWebpackPlugin({
                template: "./public/index.html"
            })
        ],
        devServer: {
            open: true//自动打开页面
        }
    }
    
    style1.css
    /* 处理banner的样式 */
    
    :global(.main){
        background: lightblue;
    }
    
    .c1 {
        color: red
    }
    
    .c2 {
        color: green
    }
    
    
    
    h1{
        font-weight: bold;
    }
    
    style2.css
    /* article的样式 */
    
    .c1 {
        color: blue;
    }
    
    .c2 {
        background: brown;
    }
    
    index.js
    import style1 from  "./assets/style1.css"
    import style2 from "./assets/style2.css"
    
    console.log(style1)
    
    const div1 = document.getElementById("div1");
    div1.className = style2.c1;
    
    
    index.html
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Document</title>
    </head>
    <body>
        <div class="main">
            asdfasdfasf
        </div>
        <div id="div1">
            Lorem ipsum dolor sit.
        </div>
    </body>
    </html>
    
    

    显示结果

    在这里插入图片描述

    展开全文
  • webpack怎样压缩css

    千次阅读 2020-08-18 10:54:38
    webpack是前端一个工具,可以让各个模块进行加载,预处理,再...它将在webpack构建期间搜索css资源,并将优化\最小化css(默认情况下,它使用cssnano,但可以指定自定义css处理器)。 解决了extract-text-webpack-plu...

    webpack前端一个工具,可以让各个模块进行加载,预处理,再进行打包。现代的前端开发很多环境都依赖webpack构建,比如vue官方就推荐使用webpack

    webpack可以使用css压缩插件Optimize css Assets webpack Plugin来压缩css文件。

     

    该插件有什么作用?

    它将在webpack构建期间搜索css资源,并将优化\最小化css(默认情况下,它使用cssnano,但可以指定自定义css处理器)。

    解决了extract-text-webpack-plugin css重复问题。

    由于extract-text-webpack-plugin仅捆绑(合并)文本块,如果它用于捆绑css,则捆绑包可能具有重复的条目(块可以是重复的,但是当合并时,可以创建重复的css)。

    安装:

    npm install --save-dev optimize-css-assets-webpack-plugin

    参数:

    该插件可以接收以下选项(所有这些都是可选的):

    assetNameRegExp:一个正则表达式,指示应优化\最小化的资产的名称。提供的正则表达式针对配置中ExtractTextPlugin实例导出的文件的文件名运行,而不是源CSS文件的文件名。默认为/\.css$/g

    cssProcessor:用于优化\最小化CSS的CSS处理器,默认为cssnano。这应该是一个跟随cssnano.process接口的函数(接收CSS和选项参数并返回一个Promise)。

    cssProcessorOptions:传递给cssProcessor的选项,默认为{}

    canPrint:一个布尔值,指示插件是否可以将消息打印到控制台,默认为true

    实例:

    var OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');
    module.exports = {
      module: {
        rules: [
          {
            test: /\.css$/,
            loader: ExtractTextPlugin.extract('style-loader', 'css-loader')
          }
        ]
      },
      plugins: [
        new ExtractTextPlugin('styles.css'),
        new OptimizeCssAssetsPlugin({
          assetNameRegExp: /\.optimize\.css$/g,
          cssProcessor: require('cssnano'),
          cssProcessorOptions: { safe: true, discardComments: { removeAll: true } },
          canPrint: true
        })
      ]
    };

     

    展开全文
  • webpack打包vue项目的时候默认会把vue里的css打包到页面上。 webpack.config.js里的plugins加上以下配置 new webpack.LoaderOptionsPlugin({ test:/\.vue$/, options: { vue: { loaders: { css: ...
  • npm install postcss-loader postcss-preset-env -D 2、配置 { test: /\.css$/i, use: [ MiniCssExtraactPlugin.loader, 'css-loader', { loader: 'postcss-loader', options: { postcssOptions: { ...

    一、css兼容性

    1、安装插件

    npm install postcss-loader postcss-preset-env -D

    2、配置(https://www.npmjs.com/package/postcss-loader

    {
      test: /\.css$/i,
      use: [
        MiniCssExtraactPlugin.loader,
        'css-loader',
        {
          loader: 'postcss-loader',
          options: {
            postcssOptions: {
              plugins: [
                'postcss-preset-env'
              ]
            }
          }
        },
      ]
    }
    
    

    3.在package.json中配置browserslist

    "browserslist":{
        "development":[
          "last 1 chrome version",
          "last 1 firefox version",
          "last 1 safari version"
        ],
        "production":[
          ">0.1%",
          "not dead",
          "not op_mini all"
        ]
      }

    4.默认环境是生成环境,要使用开发环境需要配置

    //设置node.js环境变量,默认是生产环境,配置后为开发环境;
     process.env.NODE_ENV = 'development';

    二、css压缩(官方)

    1、安装插件并引入

    npm install css-minimizer-webpack-plugin --save-dev
    const MiniCssExtractPlugin = require('mini-css-extract-plugin');
    const CssMinimizerPlugin = require('css-minimizer-webpack-plugin');

    2、配置

    module.exports = {
      module: {
        rules: [
          {
            test: /.s?css$/,
            use: [MiniCssExtractPlugin.loader, 'css-loader', 'sass-loader'],
          },
        ],
      },
      optimization: {
        minimizer: [
          new CssMinimizerPlugin(),
        ],
      },
    };

    展开全文
  • webpack配置postCss

    2019-11-08 09:55:49
    不同浏览器对样式的兼容性不同,针对不同的浏览器要手动为css添加前缀保证他在各个浏览器的兼容性, 但是可以通过打包工具中配置postCss自动为css样式添加前缀 1.首先 npm install postcss-loader autoprefixer -D 2....
  • webpack样式处理 — css插件 一、 处理css文件 有了html文件后,我们想给页面增加一些css样式,此时我们就需要在js文件中引入我们需要的css文件: require('./index.css') 运行npm run dev,此时因为js里无法解析...
  • env": "^7.13.10", "babel-loader": "^8.2.2", "autoprefixer": "^10.2.5", "mini-css-extract-plugin": "^1.3.9", "optimize-css-assets-webpack-plugin": "^5.0.4", "clean-webpack-plugin": "^3.0.0", "cssnano":...
  • webpack4打包多个css的两种方法

    万次阅读 2018-07-23 10:16:47
    1.将css打包到js内部 配置文件./conf/webpack.dev.js: const path = require("path"); module.exports = { mode: "development", //打包为开发模式 entry: "./src/main", //入口...
  • webpack之引入css

    万次阅读 2018-04-27 20:53:51
    前言:本文演示了如何打包css文件;涉及到的loader: css-loader、style-loader;css-loader的任务:把css文件作为模块打包style-loader的任务:把打包好的css文件动态的插入到html文件的&lt;style&gt;标签内...
  • Critters是一个Webpack插件,可以内嵌应用程序的并延迟加载其余部分。 critters-webpack-plugin 它与有些不同,因为它不使用无头浏览器来呈现内容。 这种权衡使Critters非常快速,轻便。 这也意味着Critters内​​...
  • 优化CSS资产Webpack插件 一个Webpack插件,用于优化\最小化CSS资产。 :warning: 对于webpack v5或更高版本,请改用 。 插件有什么作用? 它将在Webpack构建期间搜索CSS资产,并优化\最小化CSS(默认情况下,它...
  • 关键Css Webpack插件 关键csswebpack插件,基于 ,并支持publicPath。 安装 $ yarn add critical-css-webpack-plugin --dev 用法 webpack.config.js const CriticalCssPlugin = require ( 'critical-css-webpack-...
  • webpackcss-loader的解析配置如下 { test: /\.(css|less)$/, exclude: path.resolve(__dirname, 'node_modules'), use: ['style-loader', 'css-loader', 'less-loader'] } 打包后在dist目录的发现没有css...
  • webpackcss进行单独打包

    千次阅读 2018-03-30 16:53:16
    我们都知道webpack是可以直接去处理javascript的代码,但是对于css、image、font等,是不能直接处理的,需要使用到loader将其转化成javbascript代码片,然后在对其进行处理 对于处理css,需要使用到的loader是:...
  • 不知不觉地春节要来临了,今天已经是放假的第二天...前面我已写了6篇相关的Webpack方面的技术知识点,今天我主要分享有关PostCSS方面的技术,PostCSS严格来说不是一款c s s预处理器,而是一个用 JavaScript 工具和插...
  • webpack分离css和js

    2019-09-19 21:26:23
    下载各种loader: babel-loader (解析 es6/7 -> es5) @babel/core(4.0) (这个...css-loader (处理css) sass-loader (处理sass) node-sass(编译器) style-loader (给你HTML页面 插入style标签生成cs...
  • 我们在开发配置环境时,总是能需要css兼容浏览器,才能显示效果 这里记录一下webpackcss的兼容性处理(使用的是postcss) 1.首先先创建好对应的目录,以及文件 2.下载对应的loader npm i postcss-loader postcss-...
  • 1 查找postcss工具的扩展,比如webpack的postcss-loader, 2 安装对应功能的postcss插件。 先来看基本使用 原生postcss插件需要借助postcss-cli使我们能在命令行控制 cnpm install postcss -D cnpm install
  • WebpackCSS 压缩插件

    千次阅读 2018-08-29 15:19:30
    Optimize CSS Assets Webpack Plugin 一个优化\减少CSS资源的Webpack插件。 该插件有什么作用? 它将在Webpack构建期间搜索CSS资源,并将优化\最小化CSS(默认情况下,它使用cssnano,但可以指定自定义CSS处理器...
  • 讲过前两节的接收,我们对webpack有了基本的认识,对HtmlWebpackPlugin插件的各个属性也做了简要的说明,对其他相关属性可以参考。说完了js、html,我们来说一说css相关的配置。首先你可以试验一下,为我们编写的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 96,579
精华内容 38,631
关键字:

csswebpack