当前位置: 首页 > news >正文

网站建设服务合同 付款方式建设团购网站费用

网站建设服务合同 付款方式,建设团购网站费用,广东网站建设公司排名,数据处理网站开发文章目录 系列全集vite 处理css流程vite如何解决协同开发#xff0c;样式重复覆盖的问题#xff1f;使用less通过配置#xff0c;更改vite的css默认行为vite 利用postcss样式兼容低版本浏览器 系列全集 #xff08;01#xff09;vite 从启动服务器开始 #xff08;02样式重复覆盖的问题使用less通过配置更改vite的css默认行为vite 利用postcss样式兼容低版本浏览器 系列全集 01vite 从启动服务器开始 02vite环境变量配置 03vite 处理 css vite 处理css流程 vite 天生就支持对css文件的处理主要的处理流程如下。 vite读取到main.js中引用到了index.css通过fs模块去读取index.css文件的内容直接创建一个style标签将index.css中的文件内容直接copy进style标签中将style标签插入到index.html的head中将该css文件中的内容直接替换为hs脚本(方便热更新或者css模块化) 创建一个index.css文件 * {padding: 0;margin: 0;box-sizing: border-box; }将其引入main.js中 import { count } from ./counter.js; import ./index.cssconsole.log(count);启动vite服务器 yarn dev 或者yarn vite将css的内容注入style标签放置到head标签里 原本index.css的文件被替换了 vite如何解决协同开发样式重复覆盖的问题 使用css module css模块化 css模块化是 以 module.css 结尾的文件这是css开启模块化的标志。将xxx.module.css里面所有的样式名称进行一定规则的替换增加hash字符串比如footer 替换为 _footer_123st同时创建一个映射对象 {footer: _footer_123st}将替换后的内容塞进style标签里然后放入head标签中。将原本的xxx.module.css内容全部抹除替换成对应js脚本。将创建的映射对象在脚本中默认导出 分别创建 一下文件 componentA index.module.css 配置 .footer {width: 100vw;height: 300px;background-color: aquamarine; }componentB index.module.css 配置 .footer {width: 100vw;height: 300px;background-color: yellowgreen; }componentA index.js import componentAcss from ./index.module.cssconst div document.createElement(div);div.className componentAcss.footer;document.body.appendChild(div)componentB index.js import componentBcss from ./index.module.cssconst div document.createElement(div);div.className componentBcss.footer;document.body.appendChild(div)在main.js中全部引入 import ./index.css import ./index.less import ./src/componentA/index.js import ./src/componentB/index.js启动服务器之后发现css module的类名都被替换了加了hash 使用less 有的时候我们需要使用css预编译器比如less 创建index.less文件 body {background-color: yellow; }在main.js中引入 import { count } from ./counter.js; import ./index.css import ./index.less console.log(count);启动vite服务器后报错 提示我们需要安装less依赖less属于开发依赖 yarn add -D less 或者 npm install less -D重启服务器后就能正常解析less了 通过配置更改vite的css默认行为 import { defineConfig } from vite;export default defineConfig({css: {// 会丢给postcss module 去配置 https://github.com/madyankin/postcss-modulesmodules: { // 只针对模块化的样式scopeBehaviour: local, // 配置当前的css样式的行为是local模块化还是global全局化有hash就是开启模块化因为它可以保证不同的模块相同类名不重复。// generateScopedName: [name]__[local]___[hash:base64:5], // 自定义生成名字的规则 更多配置 https://github.com/webpack/loader-utils#interpolatenamegenerateScopedName:(name,filename,css) {// name css文件的类名// filename 当前css的绝对路径// css 当前给定的样式return ${name}_${Math.random() * 100}},localsConvention: camelCaseOnly, // 修改生成的配置对象的展示形式驼峰/划线/中划线形式hashPrefix: , // 补充的hash前缀会参与到生成的类名中globalModulePaths: [] // 导入了第三方样式时或某些不希望module.css模块化hash时,使用这个globalModulePaths填入css模块化的路径。},preprocessorOptions: {// 预处理的配置less: { // 更多less全局配置 https://less.bootcss.com/usage/#lessjs-optionsmath: always,globalVars: { // 配置less的全局变量greenColor: #008000,}}},devSourcemap: true // 开发中能够快速找到某样式对应的样式文件} });css开启 devSourcemap 后能够快速找到每一个样式对应的文件名但最好只在开发环境中使用 不开启devSourcemap 时一般是上生产环境默认情况下也是不开启的。 vite 利用postcss样式兼容低版本浏览器 安装 yarn add postcss-preset-env -Dvite.config.hs中配置 import { defineConfig } from vite; import postcssPresetEnv from postcss-preset-env;export default defineConfig({optimizeDeps: {exclude: [], // 将指定数组中的依赖不进行预构建},envPrefix: ENV, // 更改环境变量注入到业务代码中所需的前缀名css: {modules: {scopeBehaviour: local, // 配置当前的css样式的行为是local模块化还是global全局化有hash就是开启模块化因为它可以保证不同的模块相同类名不重复。// generateScopedName: [name]__[local]___[hash:base64:5], // 自定义生成名字的规则 更多配置 https://github.com/webpack/loader-utils#interpolatenamelocalsConvention: camelCase, // 修改生成的配置对象的展示形式驼峰/下划线camelCaseOnly/中划线形式hashPrefix: 11, // 补充的hash前缀会参与到生成的类名中// globalModulePaths: []},devSourcemap: true, // 开发中能够快速找到某样式对应的样式文件postcss: {plugins:[postcssPresetEnv()]}} });测试css是否降级兼容 .footer {width: clamp(100px, 100%, 500px);height: 300px;background-color: aquamarine; }配置postcssPresetEnv 之前 配置postcssPresetEnv 之后
http://www.hkea.cn/news/14311478/

相关文章:

  • 咸阳网站开发哪家好网站推广的目标是什么
  • 微网站设计与开发竞赛网页设计与制作课程设计报告书
  • 网站建设找祥赢如何做聚合类网站
  • 如何搭建手机网站东莞网站建设周期
  • 二手车 东莞网站建设wordpress网易音乐
  • 公司论坛网站建设规划书wordpress增加下载量显示
  • seo视频教程百度网盘南宁seo推广服务
  • 网站做区块链然后往里面投钱织梦可以做大型网站吗
  • 网站建设方案书1500字湖北省建设厅行政审批网站
  • 阿里云服务器可以做彩票网站吗网络平台的推广方法
  • 南京搜必应网站优化百度山西授权代理
  • 企业级网站开发原理图谷歌排名查询
  • 外贸建站推广公司医院网站域名备案
  • 网站中数据查询如何做你有网站 我做房东 只收佣金的网站
  • 安徽外贸网站建设辛集网站建设
  • 做视频编辑哪个网站素材比较好wordpress时间调用
  • 永康网站设计建设网站那个公司好
  • 郑州网站优化平台高企达建设有限公司网站
  • 珠海网站建设找哪家工信部网站备案信息怎么查询
  • 云南网站建设哪家权威怎么申请免费国内免费网站
  • 滨海天津网站建设吉林省吉林市房价
  • 怎么查网站接入商钉钉网站建设服务协议
  • 网站开发需求分析中性能需求义乌前十跨境电商公司
  • 网站后台选择网站建设需要具备什么条件
  • 上海泵阀网站建设有哪些可以做头像的网站
  • 开网站是干什么的域名怎么选才正确
  • wordpress仿站函数开个小网站要怎么做的
  • 富阳区住房与建设局网站网站cdn+自己做
  • 建设工程交易中心网站收费标准装修案例图
  • 网站建设一条龙做网站买完域名还要