React with Webpack - 3: 内联image、font
React with Webpack - 3: 内联image、font
内联image
一直到 HTTP/2 版本,你才能在WEB应用加载的时候避免建立太多 HTTP 请求。根据你的浏览器,你有一个并行请求数值。如果在你的 CSS 中加载了太多图片的话,可以自动把这些图片转成 BASE64 字符串,然后内联到 CSS 里来降低必要的请求数,这个方法取决与你的图片大小。你需要为你的应用平衡下载的大小和下载的数量,而 Webpack 可以让这个平衡的调整十分轻松。
安装 url-loader
执行命令npm install url-loader --save-dev
来安装url-loader加载器,它会把需要转换的路径变成 BASE64 字符串。 Webpack 会解析你 CSS 中的 “url()”,就像其他 require 或者 import 语句一样处理。这意味着,我们可以在config.js中通过图片文件的扩展名来进行配置,然后使用url-loader来处理它们。
内联font
要正确引入字体实在是非常难。首先,通常我们有 4 种不一样的格式,但是只有其中一种会被对应的浏览器使用到。你肯定不会想引入全部四种格式,这样只会让 CSS 文件急剧膨胀,然后又没办法优化。
选择一种格式
根据你的项目,你有可能选择出一种字体格式,如果你不考略 Opera Mini,所有的浏览器都支持 .woff 和 .svg 格式。问题是在不同浏览器下和不同版式下,字体看起来会有一点点不同。所以测试 .woff 和 .svg,然后找出能够在所有浏览器中看起来最好的那个。
可能你还有其他更好的策略,那请分享一下。
实践
就像内联图片一样来内联字体。
var path = require('path');
var config = {entry: path.resolve(__dirname, 'app/main.js')output: {path: path.resolve(__dirname, 'build'),filename: 'bundle.js'},module: {loaders: [{test: /\.jsx$/,loader: 'jsx'}, {test: /\.woff$/,loader: 'url?limit=100000'}]}
};
要确保你有字体文件大小的限制,否则,它们一定不会被内联进去。
React with Webpack - 3: 内联image、font相关推荐
- webpack转内联px为rem_Vuejs项目配置webpack将px自动转化为rem,适配移动端
本项目采用 iPhone 6 物理像素为 750px * 1334px 的设计稿 rem兼容性 先看看rem的兼容性,关于移动端 ios:6.1系统以上都支持 android:2.1系统以上都支持 大 ...
- react内联样式_React样式化的组件:内联样式+ 3种其他CSS样式化方法(带有示例)...
react内联样式 There's no one right way to style your React components. It all depends on how complex you ...
- React 项目----内联样式style的使用 (12)
在此我们之前学习了react的基本的语法,对于页面我们还经常关注的是页面的样式,那么react 项目中,我们应该如何使用样式 首先我们来做一个简单的页面一个评论的列表 模拟数据: commentLis ...
- [react] 写个例子说明什么是JSX的内联条件渲染
[react] 写个例子说明什么是JSX的内联条件渲染 ifTrue ? <ComA /> : <ComB>ifTrue && <ComC/> 个人 ...
- [webpack] 如何把代码内联进html中?
作者:滴滴公共前端团队 - 水乙 我们平常在打包文件的时候,有时候需要把 js.css 等代码内联进 html 中,减少文件的请求,优化加载速度. 用过 fis 的同学应该对 __inline 语法比 ...
- react里面 内联css样式怎么样_React.js内联样式最佳做法
小编典典 目前还没有很多"最佳实践".我们中那些使用内联样式作为React组件的人仍在进行大量试验. 全部还是全部? 我们所称的"样式"实际上包括许多概念: 布 ...
- iframe内联元素有白边原因_教你如何使用内联框架元素 IFrames 的沙箱属性提高安全性?
作者:Huup_We 转发链接:https://mp.weixin.qq.com/s/21ydrXuinCtYiJdsynsTrA 前言 想要构建一个体验丰富的网站,嵌入组件和内容几乎是不可避免的,而 ...
- React with Webpack - 2: css 处理
React with Webpack - 2 – css处理 Webpack允许像加载任何代码一样加载 CSS,而且你可以选择 自己的加载策略:你可以在 入口主文件中加载所有的CSS 文件,也可以在每 ...
- CSS内联样式的使用,吐血整理
前言 本文主要是javascript和css方面的基础面试题,适合面试前以及平时复习食用. 基础知识是前端一面必问的,如果你在基础知识这一块翻车了,就算你框架玩的再6,webpack.git.node ...
最新文章
- LESSON 10.110.210.3 SSE与二分类交叉熵损失函数二分类交叉熵损失函数的pytorch实现多分类交叉熵损失函数
- 深度学习和目标检测系列教程 14-300:训练第一个 YOLOv3 检测器
- SRC漏洞挖掘之偏门资产收集篇
- js与C++交互及C++解析json
- RIAMeeting第六次开发者交流活动。
- [MyBatisPlus]条件构造器wapper
- 嵌入式开发硬件知识札记
- Linux流量监控工具 – iftop
- Redis通过哨兵模式实现主从复制的分布式
- springcloud gateway_Spring Cloud构建微服务架构(五)服务网关
- mysql jsp省市区三级联动_用jsp实现省市区三级联动下拉
- python音乐播放器代码_Python简易音乐播放器
- mariadb 卸载 Kali_Adobe官方卸载工具软件安装教程
- 【故障处理】ORA-12162 错误的处理
- C++练习 - 字符转换
- 【redis源码学习】rax,我愿称之为“升级版字典树”
- DS博客作业06——图
- java基础开发试题_Java应用开发基础-中国大学mooc-试题题目及答案
- 汤家凤_定积分的计算
- ps2017 cc 打印排版一寸照片
热门文章
- 现代CIO的关键是需要建立 IT/OT之间的桥梁
- linux 的基本命令
- 关于昌平100度健身俱乐部全民健身情况调查报告
- mysql 单表字段多少合适_复制信息记录表|全方位认识 mysql 系统库
- python函数调用外部变量_Python基础
- 事务隔离级别(IsolationLevel)
- JS 搜索 --下拉列表
- 教育教学知识与能力小学计算机,浅谈小学计算机教学论文
- adb 输入回车命令_adb adb shell 相关命令
- java程序中my.ini_帮忙写个JAVA 读写ini配置文件小程序!!!!!