您现在的位置是:网站首页> 编程资料编程资料
不可不知的HTML优化技巧浅谈利用缓存来优化HTML5 Canvas程序的性能使用分层画布来优化HTML5渲染的教程常用HTML meta 标签属性(网站兼容与优化需要)css(html)背景图优化合并技巧详解html5摇一摇代码优化包括DeviceMotionEvent等等HTML输入框优化以此来提高用户体验和易用度CSS(html)背景图优化合并深入探讨了解html页面的渲染过程以备学习前端的性能优化(续)了解html页面的渲染过程以备学习前端的性能优化HTML优化加快网页速度
2021-08-30
1078人已围观
简介 这篇文章主要为大家详细介绍了不可不知的HTML优化技巧,提升Web页面的性能。如何有效的降低HTML 代码的复杂度和页面元素的数量,本文告诉大家解决方法,感兴趣的小伙伴们可以参考一下
如何提升Web页面的性能,很多开发人员从多个方面来下手如JavaScript、图像优化、服务器配置,文件压缩或是调整CSS。
很显然HTML 已经达到了一个瓶颈,尽管它是开发Web 界面必备的核心语言。HTML页面的负载也是越来越重。大多数页面平均需要40K的空间,像一些大型网站会包含数以千计的HTML 元素,页面Size会更大。
如何有效的降低HTML 代码的复杂度和页面元素的数量,本文主要解决了这个问题,从多个方面介绍了如何编写简练,清晰的HTML 代码,能够使得页面加载更为迅速,且能在多种设备中运行良好。
在设计和开发过程中需要遵循以下原则:
- 结构分离:使用HTML 增加结构,而不是样式内容;
保持整洁:为工作流添加代码验证工具;使用工具或样式向导维护代码结构和格式
学习新语言:获取元素结构和语义标记。
确保可访问: 使用ARIA 属性和Fallback 属性等
测试: 使网站在多种设备中能够良好运行,可使用emulators和性能工具。
HTML,CSS 和JavaScript三者的关系
HTML 是用于调整页面结构和内容的标记语言。HTML 不能用于修饰样式内容,也不能在头标签中输入文本内容,使代码变得冗长和复杂,相反使用CSS 来修饰布局元素和外观比较合适。HTML元素默认的外观是由浏览器默认的样式表定义的,如在Chrome中h1标签元素会渲染成32px的Times 粗体。
三条通用设计规则:
- 使用HTML 来构造页面结构,CSS修饰页面呈现,JavaScript实现页面功能。CSS ZenGarden 很好地展示了行为分离。
如果能用CSS或JavaScript实现就少用HTML代码。
将CSS和JavaScript文件与HTML 分开存放。这可有助于缓存和调试。
文档结构方面也可以做优化,如下:
1、使用HTML5 文档类型,以下是空文件:
- >
- <html>
- <head>
- <title>Recipes: pestotitle>
- head>
- <body>
- <h1>Pestoh1>
- <p>Pesto is good!p>
- body>
- html>
2、在文档起始位置引用CSS文件,如下:
- <head>
- <title>My pesto recipetitle>
- <link rel="stylesheet" href="/css/global.css">
- <link rel="stylesheet" href="css/local.css">
- head>
使用这两种方法,浏览器会在解析HTML代码之前将CSS信息准备好。因此有助于提升页面加载性能。
在页面底部body结束标签之前输入JavaScript代码,这样有助于提升页面加载的速度,因为浏览器在解析JavaScript代码之前将页面加载完成,使用JavaScript会对页面元素产生积极的影响。
- <body>
- ...
- <script src="/js/global.js">
- <script src="js/local.js">
- body>
使用Defer和async属性,脚本元素具有async 属性无法保证会按顺序执行。
可在JavaScript代码中添加Handlers。千万别加到HTML内联代码中,比如下面的代码则容易导致错误且不易于维护:
index.html:
- <head>
- ...
- <script src="js/local.js">
- head>
- <body onload="init()">
- ...
- <button onclick="handleFoo()">Foobutton>
- ...
- body>
下面的写法比较好:
index.html:
- <head>
- ...
- head>
- <body>
- ...
- <button id="foo">Foobutton>
- ...
- <script src="js/local.js">
- body>
js/local.js:
- init();
- var fooButton =
- document.querySelector('#foo');
- fooButton.onclick = handleFoo();
验证
优化网页的一种方法就是浏览器可处理非法的HTML 代码。合法的HTML代码很容易调试,且占内存少,耗费资源少,易于解析和渲染运行起来更快。非法的HTML代码让实现响应式设计变得异常艰难。
当使用模板时,合法的HTML代码显得异常重要,经常会发生模板单独运行良好,当与其他模块集成时就报各种各样的错误,因此一定要保证HTML代码的质量,可采取以下措施:
- 在工作流中添加验证功能:使用验证插件如HTMLHint或SublineLinter帮助你检测代码错误。
使用HTML5文档类型
确保HTML的层次结构易于维护,要避免元素嵌套处于左开状态。
保证添加各元素的结束标签。
删除不必要的代码 ;没有必要为自关闭的元素添加结束标签;Boolean 属性不需要赋值,如果存在则为True;
代码格式
格式一致性使得HTML代码易于阅读,理解,优化,调试。
语义标记
语义指意义相关的事物,HTML 可从页面内容中看出语义:元素和属性的命名一定程度上表达了内容的角色和功能。HTML5 引入了新的语义元素,如
选择合适的元素来编写代码可保证代码的易读性:
- 使用
(
,
…)表示标题,
- 或
- 实现列表;
注意使用标签之前应添加 标签;
选择合适的HTML5语义元素如,
例如:
- <div>Name: <input type="text" id="name">div>
换种写法会更好:
1:
2:
3:
布局
要提高HTML代码的性能,要遵循HTML 代码以实现功能和为目标,而不是样式。
- 使用
元素修饰文本,而不是布局;默认
是自动提供边缘,而且其他样式也是浏览器默认提供的。
避免使用
分行,可以使用block元素或CSS显示属性来代替。
避免使用
来添加水平线,可使用CSS的border-bottom 来代替。
不到关键时刻不要使用div标签。
尽量少用Tables来布局。
可以多使用Flex Box
使用CSS 来调整边距等。
CSS
虽然本文讲解的是如何优化HTML,下面介绍了一些使用css的基本技能:
- 避免内联css
最多使用ID类 一次
当涉及多个元素时,可使用Class来实现。
以上就是本文介绍的优化HTML代码的技巧,一个高质量高性能的网站,往往取决于对细节的处理
相关内容
- HTML代码书写规范指南XHTML编码七条基本规范小结规范HTML代码可以节省修改代码的时间学习如何书写整洁规范的HTML标记网页制作中使用规范的HTML代码的几点HTML网页META标签内容写作规范要点HTML5 语义化结构化规范化
- 深入解析HTML的table表格标签与相关的换行问题html中table表格的内容水平和垂直居中显示详解HTML中table表格的frame和rules属性Div+CSS对HTML的table表格定位用法实例html 隐藏div HTML里隐藏表格TABLE或者DIV内容的css样式HTML table表格边框的控制详细说明HTML的dl、dt、dd标记制作表格对决Table制作表HTML table 表格边框的实现思路
- HTML初学者适用的十五条最佳实践网页制作初学者:学用HTML的超链接A标记初学者接触HTML了解一些HTML标记(2)初学者接触HTML了解一些HTML标记(1)初学者接触HTML了解一些HTML标记(3)html 语法教程 chm版 初学者必备XHTML教程:针对初学者的XHTML基础HTML表格标记详细讲解(适合初学者)初学者接触HTML了解一些HTML标记(1)初学者接触HTML了解一些HTML标记(2)初学者接触HTML了解一些HTML标记(3)
- 举例讲解HTML中META标签的一些使用技巧html中meta标签及用法详解HTML标签meta总结,HTML5 head meta 属性整理HTML5各种头部meta标签的功能(推荐)HTML5头部<meta>标签的一些常用信息小结移动端html5 meta标签的神奇功效实例讲解HTML5的meta标签的一些应用 常用HTML meta 标签属性(网站兼容与优化需要)HTML头标签meta实现refresh重新定向HTML中的<meta>标签的使用详解
- HTML实现页面自动跳转的五种方法HTML阻止iframe跳转页面并使用iframe在页面内嵌微信网页版的实现方法HTML页面跳转及参数传递问题html页面跳转传递参数问题HTML页面3秒后自动跳转的三种常见方法 html页面实现过两秒跳转至其他页面的方法phpwind生成html页面右下角跳转功能问题HTML中button标签点击实现页面跳转的三种方法
- HTML页面3秒后自动跳转的三种常见方法 HTML阻止iframe跳转页面并使用iframe在页面内嵌微信网页版的实现方法HTML页面跳转及参数传递问题html页面跳转传递参数问题HTML实现页面自动跳转的五种方法html页面实现过两秒跳转至其他页面的方法phpwind生成html页面右下角跳转功能问题HTML中button标签点击实现页面跳转的三种方法
- 点击按钮文字变成input框,点击保存变成文字的实现代码限制html文本框input只能输入数字和小数点input checkbox 扩大点击范围的实现方法关于input的file 控件及美化浅谈html中input只读属性readonly和disable的区别快速解决input[type=file]打开时慢、卡顿的问题
- <td></td>标签的border 样式在浏览器中显示不出来的解决方法纯html+css实现Element loading效果纯html+css实现奥运五环的示例代码HTML+CSS实现导航条下拉菜单的示例代码html+css实现滚动到元素位置显示加载动画效果纯html+css实现打字效果html+css实现环绕倒影加载特效html输入两个数实现加减乘除功能html中显示特殊符号(附带特殊字符对应表)关于html选择框创建占位符的问题html css3不拉伸图片显示效果
- 关于html水平垂直居中的问题小结利用CSS3的flexbox实现水平垂直居中与三列等高布局Flexbox制作CSS布局实现水平垂直居中的简单实例浅析CSS实现水平垂直同时居中的5种思路让DIV水平垂直居中的两种完美方法推荐CSS解决页面图片水平垂直居中问题的方法全面总结使用CSS实现水平垂直居中效果的方法CSS定位“十字架”之水平垂直居中HTML对于元素水平垂直居中的探讨DIV或者DIV里面的图片水平与垂直居中的方法
- 剖析标注HTML元素时class比id所具有的优势HTML5全屏响应式缩放切换幻灯片代码html5 canvas实现的“我们要发财了”游戏源码Html制作简单而漂亮的登录页面html5实现的仿网页版微信聊天界面效果源码详解HTML5中rel属性的prefetch预加载功能使用HTML表格布局实例讲解html5 canvas实现的3D飞行飞行动画特效源码关于html的下载功能详解表格单元格内容超出时显示省略号效果(实现代码)
