WEB前端开发最佳实践(2)

样式和结构分离

  • HTML页面链接一个CSS(最优),提高加载速度
  • HTML内嵌CSS(单一页面最佳,减少加载CSS样式文件的请求数目,加快加载速度
  • 内联CSS样式,可以使用JS动态来统一修改,很少使用,JQ中使用其实现动画效果
  • 在CSS样式文件中引用CSS文件,避免使用

添加JS禁用提示信息

  • 使用noscrpt,HTML4只在body中起作用,HTML5中可以出现在head中,支持HTML,不支持XHTML
  • 最好使用noscript,采用渐进增强的模式,平稳降级

添加必要的meta的标签

  • meta的属性:name,http-equiv,content,charset
  • name和content属性组合,构成名称/值对
  • name中keywords,description最常用
  • http-equiv和content属性结合,构成http命令
  • charset设置编码

HTML语义化

  • 语义化使搜索引擎和第三方抓取工具更容易读懂代码
  • 去掉CSS也可以保持良好的外观
  • div,span尽量少使用
  • 把无关的元素重HTML中删除
  • 添加一些隐藏文字
  • 构建页面标题的最佳实践:
    • 使用h1~h6标签
    • 页面只是使用一个h1
    • 使用过程中不要跳级
    • 不要使用h1~h6设置样式
  • 设计表单:
    • 使用label标签,并设置label标签的for属性
    • 给输入控件设置合适的水印提示
    • 输入控件设置tab顺序
    • 使用HTML5中引入的表单控件

精简HTML代码

  • 删除多余的div,span容器
  • 装饰性的元素使用CSS样式来实现
  • 避免使用table布局
  • HTML4.01中Transitional和Strict两种模式下规则不同(eg:行内元素是不能够包含块级元素),在HTML5可以相互包含

HTML5新特性使用

  • 使用HTML5中简化的定义方式

    • 定义文档类型声明 (标准模式)
    • 定义页面编码
    • 样式和脚本文件的引用
    • async和defer属性
    • 不使用在内联里面
    • defer:以并行的方式下载脚本,而不是阻塞的方式下载,在脚本加载完成后,浏览器会在DOM触发之前按照引用顺序运行JS,当脚本不需要立即运行时,在标签中设置“defer”属性。 (立即脚本没有被包含在一个function块中,因此会在加载过程中执行。) 设置“defer”属性后,IE就不必等待该脚本装载和执行完毕。这样页面加载会更快。一般来说,这也表明立即脚本最好放在function块中,并在 document或者body对象的onload 句柄中处理该函数。在有一些脚本需要依赖用户操作而执行时—-例如点击按钮,或者移动鼠标到某个区域—-使用该属性非常有用。但当有一些脚本需要在页面加载过程中或加载完成后执行,使用defer属性得到的好处就不太大。
    • async:以异步的方式下载脚本,在下载结束后立即执行代码,而不会等待页面解析结束
    • 在设置async时候,推荐同时设置defer属性,提高脚本加载执行的性能
时间: 2024-12-19 05:54:03

WEB前端开发最佳实践(2)的相关文章

移动端WEB前端开发最佳实践

移动端WEB前端开发最佳实践 Safari,Android Browser,Chrome都是以WebKit为核心的 移动设备和PC之间的页面现实存在差异(Safari中定义了viewport) 在移动设备和桌面端WEB前端开发中,事件绑定存在差异(移动触点) 页面控件设计存差异(点触不灵敏,虚拟键盘弹出框) 移动设备的网络带宽普遍比PC慢,移动页面要设置更简洁 PC页面兼容移动设备 使用流式布局 借助CSS Media queries(媒体查询)技术 使用合适的图片显示兼容方案 保持页面简洁,不

入门书籍 web前端开发最佳实践

高效web前端开发  book PageSpeed  出自google公司  是一款  免费的工具  性能分析 Timeline网页交互  和渲染  所要花费的时间 Profile谁  可以查看网页cpu以及内存占有的情况报告 Audits  中提供了各种资源及配置的优化建议和未使用的css规则的列表 代码的压缩 文本服务器开启Gzip压缩. UglifyJs  不仅仅是一个压缩工具,同事具有JS语法分析和代码美化工能 图片压缩工具  以在线工具居多  TinyPNG  压缩  PNG格式图片.

<读书笔记>《Web前端开发最佳实践》

P77 P89 CSS Reset P94 给CSS样式定义排序    排序工具:CSScomb P97 什么是CSS的权重?权重是指选择符的优先级 P100 工具:Sass Less P101 框架:YUI.ExtJS P102 hack代码,不易理解且维护困难 P103 条件注释 P104 em px % 2016.3.8 P110 CSS的匹配原理和我们习惯的匹配过程是相反的,它是从右到左进行匹配的. P111 CSS选择器定义的最佳实践(四个避免): 1.* { } 2.referenc

WEB前端开发最佳实践(3)

选择器注意 尽量不使用ID选择器 减少子选择器的层级(less和Sass的滥用) 使用组合CSS类选择器 兼容IE浏览器 兼容旧浏览器的代码,被称为hack代码 熟悉IE浏览器中常见的兼容样式 分离样式兼容代码 em,px,% px:相对尺寸,但由于同环境,又是绝对尺寸 em:应用元素上字体大小的两倍,%:相对于父元素的百分比 尽量设置相对尺寸 只有在可预知元素尺寸的情况下才使用绝对尺寸 使用em设置字体的大小 使用高效的CSS选择器 匹配原理:从右到左 避免使用通配符 避免使用标签和单个属性选

《web前端开发最佳实践》党建 摘要

1. 各种调试工具.ie dev toolbar. chrome developer tools. firebug .fiddler 2. 压缩合并工具 3. fis 4. 性能工具yslow.  pagespeed 5. 压缩 gzip js压缩 uglifyjs. yui compressor.  closoure compiler. webstorm file watcher css 压缩   css compressor 6. 规范 层级id 公开函数首字母大写 $前缀 输入框的tab顺

【WEB前端开发最佳实践系列】JavaScript篇

一.养成良好的编码习惯,提高可维护性 1.避免定义全局变量和函数,解决全局变量而导致的代码"污染"最简单的额方法就是把变量和方法封装在一个变量对象上,使其变成对象的属性: 1 var myCurrentAction = { 2 length : 0 , 3 init : function(){}, 4 action : function(){} 5 } 还可以将全局的变量包含在一个局部作用域中,然后在这个作用域中完成这些变量的定义以及变量使用的逻辑: 1 (function(){ 2

Web 前端优化最佳实践

面向内容的优化规则目前有 10 条. 1. 尽量减少HTTP请求 (Make FewerHTTPRequests) 作为第一条,可能也是最重要的一条.根据 Yahoo! 研究团队的数据分析,有很大一部分用户访问会因为这一条而取得最大受益.有几种常见的方法能切实减少HTTP请求: 1) 合并文件,比如把多个CSS文件合成一个: 2) CSSSprites 利用CSSbackground 相关元素进行背景图绝对定位:参见:CSS Sprites: Image Slicing’s Kiss of De

web移动开发最佳实践之 css篇

web移动开发最佳实践之 css篇 一.css概述 css即层叠样式表(Cascading Style Sheets),它的作用主要是控制页面元素的样式,包括布局.颜色.字体.字号.空白.边框.属性等等.css的出现使得html的内容和样式分离,极大的提高了工作效率. 目前最新的标准是css3,下面几节将介绍在使用css过程中应遵循的最佳实践方案. 二.使用高效的css选择器 欲创建一个高效的web应用,你要了解浏览器是如何读取你的web页面并呈现出来的.当浏览器读取你的html文档时,它首先对

web移动开发最佳实践之 css篇 ——转

 web移动开发最佳实践之 css篇 一.css概述 css即层叠样式表(Cascading Style Sheets),它的作用主要是控制页面元素的样式,包括布局.颜色.字体.字号.空白.边框.属性等等.css的出现使得html的内容和样式分离,极大的提高了工作效率. 目前最新的标准是css3,下面几节将介绍在使用css过程中应遵循的最佳实践方案. 二.使用高效的css选择器 欲创建一个高效的web应用,你要了解浏览器是如何读取你的web页面并呈现出来的.当浏览器读取你的html文档时,它首先