首页 > 代码库 > 前端工程师的知识体系
前端工程师的知识体系
Front-End Engineer 这词很好的体现了前端的特(ku)殊(bi)性。
下图是张克军绘制的前端工程师图解:
前端开发的核心是HTML + CSS + JavaScript。本质上它们构成一个MVC框架,即HTML作为信息模型(Model),CSS控制样式(View),JavaScript负责调度数据和实现某种展现逻辑(Controller)。
HTML
1.标签的分类
-
标签表示一个元素
-
按性质划分: Block-Level和Inline-Level
-
按语义划分:
-
Headings: h1, h2, h3, h4, h5, h6
-
Paragraphs: p
-
Text Formatting: em, strong, sub, del, ins, small
-
Lists: ul, li, ol, dl, dt, dd
-
Tables: table, thead, tbody, tr, th, td
-
Forms and Input: form, input, select, textarea
-
Others: div, span, a, img, <!---->
-
HTML5: header, footer, article, section
2.XHTML
XHTML 于2000年的1月26日成为 W3C 标准。W3C 将 XHTML 定义为最新的HTML版本。XHTML 将逐渐取代 HTML。XHTML是通过把 HTML 和 XML 各自的长处加以结合形成的。XHTML 语法规则如下:
-
属性名和标签名称必须小写
-
属性值必须加引号
-
属性不能简写
-
用 Id 属性代替 name 属性
-
XHTML 元素必须被正确地嵌套
-
XHTML 元素必须被关闭
3.标签的语义化
为表达语义而标记文档,而不是为了样式,结构良好的文档可以向浏览器传达尽可能多的语义,不论是浏览器位于掌上电脑还是时髦的桌面图形浏览器。结构良好的文档都能向用户传达可视化的语义,即使是在老的浏览器,或是在被用户关闭了 CSS 的现代浏览器中。同时结构良好的HTML代码也有助于搜索引擎索引你的网站。
-
不要使用table布局,table是用来表格显示的。
-
不要到处滥用div标签,div是用来分块用的
-
不要使用样式标签,如font, center, big, small, b, i,样式可以用CSS来控制,b和i可以用strong和em来代替。
-
不要使用换行标签<br />和空格来控制样式,请用CSS。
-
尽量不要使用内联CSS
CSS
1.基础
-
层叠和继承
-
优先级
-
盒模型
-
定位
-
浮动
2.进阶
-
CSS Sprite:CSS Sprite主要用于前端性能优化的一种技术,原理是通过将多张背景图片合成在一张图片上从而减少HTTP请求,加快载入速度。
-
浏览器兼容性:绝大部分情况下我们需要考虑浏览器的兼容性,目前正在使用的浏览器版本非常多,IE6, IE7, IE8, IE9, IE10, Chrome, Firefox, Safari。
-
IE HasLayout和Block Format Content:IE HasLayout是一个 Internet Explorer for Windows的私有概念,它决定了一个元素如何显示以及约束其包含的内容、如何与其他元素交互和建立联系、如何响应和传递应用程序事件、用户事件等。这种渲染特性可以通过某些 CSS 属性被不可逆转地触发。而有些 HTML 元素则默认就具有”layout”。目前只有IE6和IE7有这个概率。BFC是 W3C CSS 2.1 规范中的一个概念,它决定了元素如何对其内容进行定位,以及与其他元素的关系和相互作用。这个其实和浏览器的兼容性有关,因为绝大部分的兼容性问题都是它们引起的。
-
CSS Frameworks:
-
960 Grid System
-
Blueprint CSS
-
Bluetrip
-
Minimum Page
-
CSS3:
-
圆角
-
多背景
-
@font-face
-
动画与渐变
-
渐变色
-
Box阴影
-
RGBa-加入透明色
-
文字阴影
-
CSS性能优化:CSS 代码是控制页面显示样式与效果的最直接“工具”,但是在性能调优时他们通常被 Web 开发工程师所忽略,而事实上不规范的 CSS 会对页面渲染的效率有严重影响,尤其是对于结构复杂的 Web 2.0 页面,这种影响更是不可磨灭。所以,写出规范的、高性能的 CSS 代码会极大的提高应用程序的效率。
-
LESS and SASS:CSS 预处理器,用来为 CSS 增加一些编程的的特性,无需考虑浏览器的兼容性问题,例如你可以在 CSS 中使用变量、简单的程序逻辑、函数等等在编程语言中的一些基本技巧,可以让你的 CSS 更见简洁,适应性更强,代码更直观等诸多好处。SASS基于Ruby开发。LESS既可以在客户端运行,也可以借助Node.js或者Rhino在服务端运行。
CSS框架是一系列CSS文件的集合体,包含了基本的元素重置,页面排版、网格布局、表单样式、通用规则等代码块,用于简化web前端开发的工作,提高工作效率。目前常见框架有:
还是一个比较出名和特殊的框架是Twitter的Bootstrap。Bootstrap是快速开发Web应用程序的前端工具包。它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的版式,表单,buttons,表格,网格系统等等。它是基于Less开发的。不支持IE6,在IE7和IE8里效果也不咋地。
虽然CSS3还没有正式成为标准,但是包括IE9+, chrome, Firefox等现代浏览器都支持CSS3。CSS提供了好多以前需要用JavaScript和切图才能搞定的功能,目前主要功能有:
todo work…
前端工程师的知识体系
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。