热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

编写高质量代码:Web前端开发修炼之道

2010年6月第1版1.除了应掌握CSS、HTML、JavaScript技术,还要清楚地了解它们在不同浏览器上的兼容情况,渲染原理和存在的Bug。(推荐序)2.在前端开发这个领域,“一专多

2010年6月第1版

1.除了应掌握CSS、HTML、Javascript技术,还要清楚地了解它们在不同浏览器上的兼容情况,渲染原理和存在的Bug。(推荐序)

2.在前端开发这个领域,“一专多能”是非常必要的(14)

3.最流行的两个Javascript框架jQuery和YUI:jQuery将所有组件全部放在了一个文件中,但它通过非常优秀的算法,让代码本身尽可能精简,从而尽量让代码在“加载和使用方便”的基础上,尽量往“精简”靠拢。而YUI将组件按功能分成了一个个不同的文件,“只根据需求加载相关的文件” (17)

4.判断网页标签语义是否良好:去掉样式,看网页结构是否组织良好有序,是否仍然有很好的可读性 (27)

5.一个语义良好的页面,h标签应该是完整有序没有断层的,要按照h1、h2、h3、h4这样依次排列下来(28)

6.推荐使用Firefox的插件——Web Developer,对标签是否语义良好进行调试,它提供了一个“禁用网页中的CSS”的功能 (29)

7.一般来说,表单域要用fieldset标签包起来,并用legend标签说明表单的用途。每个input标签对应的说明文本都需要使用label标签,并且通过为input设置id属性,在label标签中设置“for =someId”来让说明文本和相应的input关联起来  (40)

8.表格标题要用caption,表头要用thead包围,主体部分用tbody包围,尾部要用tfoot包围,表头和一般单元格要区分开,表头用th,一般单元格用td (42)

9.尽可能少地使用无语义标签div和span;在语义不明显,既可以用p也可以用div的地方,尽量用p,因为p默认情况下有上下间距,去样式后的可读性更好,对兼容特殊终端有利 (43)

10.DTD:Document Type Definition,文档类型定义  (45)

11.如果在HTML的最开始漏写DTD声明,Firefox仍然会按照标准模式来解析网页,但在IE中,(包括IE6、IE7、IE8)就会触发怪异模式 (46)

12.一开始就将浏览器的默认样式全部去掉。 如去掉ol和ul的列表样式,th的加粗,caption的居中,h系列标签的加粗、字号等     (53)

13.通用原子类里几个特殊的类:注意再理解一下  (53)

14.模块与模块之间尽量不要包含相同的部分,如果有相同的部分,应将它们提取出来,拆分成一个独立的模块。 (58)

  模块应在保证数量尽可能少的原则下,做到尽可能简单,以提高重用性。 (60)

15.驼峰命名法用于区别不同单词,划线用于表明从属关系  (62)

16.类的使用:多用组合,少用继承  (71)

17.模块最好不要混用margin-top和margin-bottom,统一使用margin-top或margin-bottom (81)

18.HTML标签的权重是1,class的权重是10,id的权重是100  (82)

19.如果CSS选择符权重相同,那么样式会遵循“就近原则”,这值的是选择符定义的先后顺序,而不是挂class名的先后顺序。 (82)

20.为了保证样式容易被覆盖,提高可维护性,CSS选择符需保证权重尽可能低 (84)

21.CSS sprite:减少网页的HTTP请求数,减小服务器压力 (87)

22.CSS hack: IE条件注释法、选择符前缀法、样式属性前缀法 (92)

23.a标签的四种状态的排序问题:love hate 原则,即 l(link)ov(visited)e h(hover)a(active)te

24.“zoom”是最常用、最安全、成本最小的触发hasLayout的方式,一般情况下,使用它就完全可以触发hasLayout。如果遇到特殊的情况,“zoom:1”无效的情况下,我们可以通过设置“position:relative”来触发hasLayout,尽管它会带来一点副作用。(95)

25.块级元素的宽度会自动填满其父级元素宽度。块级元素可以设置width、height属性,行内元素设置width、height属性无效。块级元素即使设置了宽度,仍然是独占一行的。

行内元素的margin和padding属性很奇怪,水平方向的padding-left、padding-right、margin-left、margin-right都产生边距效果,但竖直方向的padding-top、padding-bottom、margin-top、margin-bottom却不会产生边距效果   (96)

26.text-align:center可以实现文本、图片等行内元素的水平居中。 (104) 确定宽度的块级元素水平居中是通过设置margin-left:auto和margin-right:auto来实现的 (105)

27.不确定宽度的块级元素的水平居中方法   3种(106)

28.父元素高度不确定的文本、图片、块级元素的竖直居中是通过给父容器设置相同上下边距实现的;父元素高度确定的单行文本的竖直居中,是通过给父元素设置line-height来实现的,line-height值和父元素的高度相同;  vertical-align属性只有当父元素为td或th时,才会生效,对于其他块级元素div、p等,默认情况下是不支持的。   父元素高度确定的多行文本、图片、块级元素的竖直居中方法: 使用表格包裹 ;使用display:table-cell  (109)

 


推荐阅读
  • 本文全面解析了JavaScript中的DOM操作,并提供了详细的实践指南。DOM节点(Node)通常代表一个标签、文本或HTML属性,每个节点都具有一个nodeType属性,用于标识其类型。文章深入探讨了DOM节点的创建、查询、修改和删除等操作,结合实际案例,帮助读者更好地理解和掌握DOM编程技术。 ... [详细]
  • 使用jqTransform插件美化表单
    jqTransform 是由 DFC Engineering 开发的一款 jQuery 插件,专用于美化表单元素,操作简便,能够美化包括输入框、单选按钮、多行文本域、下拉选择框和复选框在内的所有表单元素。 ... [详细]
  • 本文介绍如何在 Android 中自定义加载对话框 CustomProgressDialog,包括自定义 View 类和 XML 布局文件的详细步骤。 ... [详细]
  • [转]doc,ppt,xls文件格式转PDF格式http:blog.csdn.netlee353086articledetails7920355确实好用。需要注意的是#import ... [详细]
  • 本文介绍了如何使用 Node.js 和 Express(4.x 及以上版本)构建高效的文件上传功能。通过引入 `multer` 中间件,可以轻松实现文件上传。首先,需要通过 `npm install multer` 安装该中间件。接着,在 Express 应用中配置 `multer`,以处理多部分表单数据。本文详细讲解了 `multer` 的基本用法和高级配置,帮助开发者快速搭建稳定可靠的文件上传服务。 ... [详细]
  • 在PHP中如何正确调用JavaScript变量及定义PHP变量的方法详解 ... [详细]
  • DVWA学习笔记系列:深入理解CSRF攻击机制
    DVWA学习笔记系列:深入理解CSRF攻击机制 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 本文探讨了使用JavaScript在不同页面间传递参数的技术方法。具体而言,从a.html页面跳转至b.html时,如何携带参数并使b.html替代当前页面显示,而非新开窗口。文中详细介绍了实现这一功能的代码及注释,帮助开发者更好地理解和应用该技术。 ... [详细]
  • ButterKnife 是一款用于 Android 开发的注解库,主要用于简化视图和事件绑定。本文详细介绍了 ButterKnife 的基础用法,包括如何通过注解实现字段和方法的绑定,以及在实际项目中的应用示例。此外,文章还提到了截至 2016 年 4 月 29 日,ButterKnife 的最新版本为 8.0.1,为开发者提供了最新的功能和性能优化。 ... [详细]
  • 本文探讨了资源访问的学习路径与方法,旨在帮助学习者更高效地获取和利用各类资源。通过分析不同资源的特点和应用场景,提出了多种实用的学习策略和技术手段,为学习者提供了系统的指导和建议。 ... [详细]
  • jQuery插件验证与屏幕键盘功能的集成解决方案
    本文介绍了一种集成了验证功能和屏幕键盘的jQuery插件解决方案。该插件不仅提供了强大的表单验证功能,还引入了一个高度可定制的屏幕键盘,以增强用户体验。通过这一集成方案,开发者可以轻松实现复杂的表单验证逻辑,并为用户提供便捷的输入方式,特别适用于移动设备或特殊输入场景。 ... [详细]
  • 本文介绍了一种自定义的Android圆形进度条视图,支持在进度条上显示数字,并在圆心位置展示文字内容。通过自定义绘图和组件组合的方式实现,详细展示了自定义View的开发流程和关键技术点。示例代码和效果展示将在文章末尾提供。 ... [详细]
  • 本文深入解析了 jQuery 中用于扩展功能的三个关键方法:`$.extend()`、`$.fn` 和 `$.fn.extend()`。其中,`$.extend()` 用于扩展 jQuery 对象本身,而 `$.fn.extend()` 则用于扩展 jQuery 的原型对象,使自定义方法能够作为 jQuery 实例的方法使用。通过这些方法,开发者可以轻松地创建和集成自定义插件,增强 jQuery 的功能。文章详细介绍了每个方法的用法、参数及实际应用场景,帮助读者更好地理解和运用这些强大的工具。 ... [详细]
  • 为开发者提供了一系列实用的参考网站和资源链接,包括HTML速查手册( 和 ),帮助开发者快速查找和学习相关技术知识。此外,还涵盖了其他重要的开发工具和文档,为编程工作提供全面支持。 ... [详细]
author-avatar
jiuye
这个家伙很懒,什么也没留下!
Tags | 热门标签
RankList | 热门文章
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有