前端规范CSS规范
来源:NEJ-更好的JS解决方案
搬运工:陈晓勉
CSS规范- 分类方法
CSS文件的分类和引用顺序
通常,一个项目我们只引用一个CSS,但是对于较大的项目,我们需要把CSS文件进行分类。
我们按照CSS的性质和用途,将CSS文件分成“公共型样式”、“特殊型样式”、“皮肤型样式”,并以此顺序引用(按需求决定是否添加版本号)。
1.公共型样式:包括了以下几个部分:“标签的重置和设置默认值”、“统一调用背景图
和清除浮动或其他需统一处理的长样式”、“网站通用布局”、“通用模块和其扩展”、“元件和其扩展”、“功能类样式”、“皮肤类样式”。
2.特殊型样式:当某个栏目或页面的样式与网站整体差异较大或者维护率较高时,可
以独立引用一个样式:“特殊的布局、模块和元件及扩展”、“特殊的功能、颜色和背景”,也可以是某个大型控件或模块的独立样式。
3.皮肤型样式:如果产品需要换肤功能,那么我们需要将颜色、背景等抽离出来放在
这里。
CSS内部的分类及其顺序
1.重置(reset)和默认(base)(tags):消除默认样式和浏览器差异,并设置部分
标签的初始样式,以减少后面的重复劳动!你可以根据你的网站需求设置!
2.统一处理:建议在这个位置统一调用背景图(这里指多个布局或模块或元件共用的
图)和清除浮动(这里指通用性较高的布局、模块、元件内的清除)等统一设置处理的样式!
3.布局(grid):将页面分割为几个大块,通常有头部、主体、主栏、侧栏、尾部等!
4.模块(module):通常是一个语义化的可以重复使用的较大的整体!比如导航、登
录、注册、各种列表、评论、搜索等!
5.元件(unit):通常是一个不可再分的较为小巧的个体,通常被重复用于各种模块中!
比如按钮、输入框、loading、图标等!
6.功能(function):为方便一些常用样式的使用,我们将这些使用率较高的样式剥离
出来,按需使用,通常这些选择器具有固定样式表现,比如清除浮动等!不可滥用!
7.皮肤(skin):如果你需要把皮肤型的样式抽离出来,通常为文字色、背景色(图)、
边框色等,非换肤型网站通常只提取文字色!非换肤型网站不可滥用此类!
8.状态:为状态类样式加入前缀,统一标识,方便识别,她只能组合使用或作为后代
出现(.u-ipt.z-dis{},.m-list li.z-sel{}),具体详见命名规则的扩展相关项。
9.功能类和皮肤类样式为表现化的样式,请不要滥用!以上顺序可以按需求适当调整。
/* 重置 */
div,p,ul,ol,li{margin:0;padding:0;}
/* 默认 */
strong,em{font-style:normal;font-weight:bold;}
/* 统一调用背景图 */
.m-logo a,.m-nav a,.m-nav em{background:url(images/sprite.png) no-repeat 9999px 9999px;}
/* 统一清除浮动 */
.g-bdc:after,.m-dimg
ul:after,.u-tab:after{display:block;visibility:hidden;clear:both;height:0;overflow: hidden;content:'.';}
.g-bdc,.m-dimg ul,.u-tab{zoom:1;}
/* 布局 */
.g-sd{float:left;width:300px;}
/* 模块 */
.m-logo{width:200px;height:50px;}
/* 元件 */
.u-btn{height:20px;border:1px solid #333;}
/* 功能 */
.f-tac{text-align:center;}
/* 皮肤 */
.s-fc,a.s-fc:hover{color:#fff;}
CSS规范- 命名规则
使用类选择器,放弃ID选择器
ID在一个页面中的唯一性导致了如果以ID为选择器来写CSS,就无法重用。
命名应简约而不失语义
/* 反对:表现化的或没有语义的命名 */
.m-abc .green2{}
.g-left2{}
/* 推荐:使用有语义的简短的命名 */
.m-list .wrap2{}
.g-side2{}
分组选择器有时可以代替扩展方法
有时候虽然两个同类型的模块很相似,但是你希望他们之间不要有依赖关系,也就是说你不希望使用扩展的方法,那么你可以通过合并选择器来设置共性的样式。
使用本方法的前提是:相同类型、功能和外观都相似,写在同一片代码区域方便维护。
/* 两个元件共性的样式 */
.u-tip1,.u-tip2{}
.u-tip1 .itm,.u-tip2 .itm{}
/* 在分别是两个元件各自的样式 */
/* tip1 */
.u-tip1{}
.u-tip1 .itm{}
/* tip2 */
.u-tip2{}
.u-tip2 .itm{}
CSS规范- 代码格式
选择器、属性和值都使用小写
在xhtml标准中规定了所有标签、属性和值都小写,CSS也是如此。
单行写完一个选择器定义
便于选择器的寻找和阅读,也便于插入新选择器和编辑,便于模块等的识别。去除多余空格,使代码紧凑减少换行。
如果有嵌套定义,可以采取内部单行的形式。
/* 单行定义一个选择器 */
.m-list li,.m-list h3{width:100px;padding:10px;border:1px solid #ddd;}
/* 这是一个有嵌套定义的选择器 */
@media all and (max-width:600px){
.m-class1 .itm{height:17px;line-height:17px;font-size:12px;}
.m-class2 .itm{width:100px;overflow:hidden;}
}
@-webkit-keyframes showitm{
0%{height:0;opacity:0;}
100%{height:100px;opacity:1;}
}
最后一个值也以分号结尾
通常在大括号结束前的值可以省略分号,但是这样做会对修改、添加和维护工作带来不必要的失误和麻烦。
省略值为0时的单位
为节省不必要的字节同时也使阅读方便,我们将0px、0em、0%等值缩写为0。
.m-box{margin:0 10px;background-position:50% 0;}
使用单引号
省略url引用中的引号,其他需要引号的地方使用单引号。
.m-box{background:url(bg.png);}
.m-box:after{content:'.';}
使用16进制表示颜色值
除非你需要透明度而使用rgba,否则都使用#f0f0f0这样的表示方法,并尽量缩写。
.m-box{color:#f00;background:rgba(0,0,0,0.5);}
根据属性的重要性按顺序书写
只遵循横向顺序即可,先显示定位布局类属性,后盒模型等自身属性,最后是文本类及修饰类属性。
.m-box{position:relative;width:600px;margin:0 auto
10px;text-align:center;color:#000;}
→显示属性自身属性文本属性和其他修饰
display width font
visibility height text-align
position margin text-decoration
float padding vertical-align
→显示属性自身属性文本属性和其他修饰
clear border white-space
list-style overflow color
top min-width background
如果属性间存在关联性,则不要隔开写。
/* 这里的height和line-height有关联性 */
.m-box{position:relative;height:20px;line-height:20px;padding:5px;color:#000;}
私有在前,标准在后
先写带有浏览器私有标志的,后写W3C标准的。
.m-box{-webkit-box-shadow:0 0 0 #000;-moz-box-shadow:0 0 0 #000;box-shadow:0 0 0 #000;}注释格式:/* 注释文字 */
对选择器的注释统一写在被注释对象的上一行,对属性及值的注释写于分号后。
注释内容两端需空格,已确保即使在编码错误的情况下也可以正确解析样式。
在必要的情况下,可以使用块状注释,块状注释保持统一的缩进对齐。
原则上每个系列的样式都需要有一个注释,言简意赅的表明名称、用途、注意事项等。
/* 块状注释文字
* 块状注释文字
* 块状注释文字
*/
.m-list{width:500px;}
.m-list li{height:20px;line-height:20px;/* 这里是对line-height的一个注释
*/overflow:hidden;}
.m-list li a{color:#333;}
/* 单行注释文字 */
.m-list li em{color:#666;}
统一Hack方法
统一使用“*”和“_”分别对IE7和6进行Hack。如下代码所示:
/* IE7会显示灰色#888,IE6会显示白色#fff,其他浏览器显示黑色#000 */
.m-list{color:#000;*color:#888;_color:#fff;}
建议并适当缩写值
“建议并适当”是因为缩写总是会包含一系列的值,而有时候我们并不希望设置某一值,反而造成了麻烦,那么这时候你可以不缩写,而是分开写。
当然,在一切可以缩写的情况下,请务必缩写,它最大的好处就是节省了字节,便于维护,并使阅读更加一目了然。
缩写方法请查阅css手册。
选择器顺序
请综合考虑以下顺序依据:
?从大到小(以选择器的范围为准)
?从低到高(以等级上的高低为准)
?从先到后(以结构上的先后为准)
?从父到子(以结构上的嵌套为准)
以下仅为简单示范:
/* 从大到小 */
.m-list p{margin:0;padding:0;}
.m-list p.part{margin:1px;padding:1px;}
/* 从低到高 */
.m-logo a{color:#f00;}
.m-logo a:hover{color:#fff;}
/* 从先到后 */
.g-hd{height:60px;}
.g-bd{height:60px;}
.g-ft{height:60px;}
/* 从父到子 */
.m-list{width:300px;}
.m-list .itm{float:left;}
选择器等级
? a = 行内样式style。
? b = ID选择器的数量。
? c = 类、伪类和属性选择器的数量。
? d = 类型选择器和伪元素选择器的数量。
选择器等级(a,b,c,d) style=””1,0,0,0
#wrapper #content {} 0,2,0,0
#content .dateposted {} 0,1,1,0
div#content {} 0,1,0,1
#content p {} 0,1,0,1
#content {} 0,1,0,0
https://www.360docs.net/doc/1118792043.html,ment .dateposted {} 0,0,2,1
https://www.360docs.net/doc/1118792043.html,ment p {} 0,0,1,2
.comment p {} 0,0,1,1
https://www.360docs.net/doc/1118792043.html,ment {} 0,0,1,1
.comment {} 0,0,1,0
div p {} 0,0,0,2
p {} 0,0,0,1
CSS规范- 优化方案
值缩写
缩写值可以减少CSS文件大小,并增加可读性和可维护性。
但并非所有的值都必须缩写,因为当一个属性的值缩写时,总是会将所有项都设置一遍,而有时候我们不希望设置值里的某些项。
/* 比如我们用下面这个样式来让某个定宽的容器水平居中,我们要的只是left和right,
* 而top和bottom不是这个样式要关心的(如果设置了反倒会影响其他样式在这个容器上的使用),
* 所以这时我们就不需要缩写
*/
.f-mgha{margin-left:auto;margin-right:auto;}
/* 比如下面这个模块的样式设置,我们确实需要设置padding的所有项,于是我们就可以采用缩写 */
.m-link{padding:6px 12px;}
避免耗性能的属性
以下所举列的属性可能造成渲染性能问题。
/* expression */
.class{width:expression(this.width>100?'100px':'auto');}
/* filter */
.class{filter:alpha(opacity=50);}
选择器合并
即CSS选择器组合,可以一次定义多个选择器,为你节省很多字节和宝贵时间。
通常我们会将定义相同的或者有大部分属性值相同(确实是因为相关而相同)的一系列选择器组合到一起(采用逗号的方法)来统一定义。
/* 以下对布局类选择器统一做了清除浮动的操作 */
.g-hd:after,.g-bd:after,.g-ft:after{display:block;visibility:hidden;clear:both;heig ht:0;content:".";}
.g-hd,.g-bd,.g-ft{zoom:1;}
/* 通常background总是会占用很多字节,所以一般情况下,我们都会这样统一调用 */
.m-logo,.m-help,.m-list li,.u-tab li,.u-tab li a{background:url(../images/sprite.png) no-repeat 9999px 9999px;}
.m-logo{background-position:0 0;}
/* 以下是某个元件的写法,因为确实很多元素是联动的或相关的,所以采用了组合写法,可以方便理解和修改 */
.u-tab li,.u-tab li a{display:inline;float:left;height:30px;line-height:30px;}
.u-tab li{margin:0 3px;}
.u-tab li a{padding:0 6px;}
背景图优化合并
图片本身的优化:
?图像质量要求和图像文件大小决定你用什么格式的图片,用较小的图片文件呈现较好的图像质量。
?当图片色彩过于丰富且无透明要求时,建议采用jpg格式并保存为较高质量。
?当图片色彩过于丰富又有透明或半透明要求或阴影效果时,建议采用png24格式,并对IE6进行png8退化(或在不得已情况下使用滤镜)。
?当图片色彩不太丰富时无论有无透明要求,请采用png8格式,大多数情况下建议采用这种格式。
?当图片有动画时,只能使用gif格式。
?你可以使用工具对图片进行再次压缩,但前提是不会影响色彩和透明。
多张图片的合并(推荐使用工具CssGaga):
?单个图标之间必须保留空隙,空隙大小由容器大小及显示方式决定。这样做的好处是既考虑了“容错性”又提高了图片的可维护性。
?图标的排列方式,也由容器大小及显示方式决定。排列方式分为以下几种:横向排列(容器宽度有限)、纵向排列(容器高度有限)、斜线排列(容器宽高不限),靠左排列(容器背景居左)、靠右排列(容器背景居右)、水平居中排列(容器背景水平居中)、垂直居中排列(容器背景垂直居中)。
?合并后图片大小不宜超过50K,建议大小在20K-50K之间。
?为保证多次修改后的图片质量,请保留一份PSD原始图,修改和添加都在PSD中进行,最后导出png。
分类合并:
并不是把所有的图标都合并在一张图片里就是最好的,除了要控制图片大小之外还要注意以下方法。
?按照图片排列方式,把排列方式一样的图片进行合并,便于样式控制。
?按照模块或元件,把同属于一个模块或元件的图片进行合并,方便模块或元件的维护。
?按照图片大小,把大小一致或差不多的图片进行合并,可充分利用图片空间。
?按照图片色彩,把色彩一致或差不多的图片进行合并,保证合并后图片的色彩不过于丰富,可防止色彩失真。
?综合以上方法进行合并。
如果CSS可以做到,就不要使用JS
让CSS做更多的事,减轻JS开发量。
?用CSS控制交互或视觉的变化,JS只需要更改className。
?利用CSS一次性更改多个节点样式,避免多次渲染,提高渲染效率。
?如果你的产品允许不兼容低版本浏览器,那么动画实现可以交给CSS。
便于阅读修改
如果你做到了“CSS规范”的所有要求,自然你也就写出了一个便于阅读和修改的漂亮的CSS。
清晰的CSS模块
用“注释”来说明每一个模块对于较大的CSS文件来说显得尤为重要。
文件压缩
合理的书写CSS能很大程度上减少文件大小,完成后,在不损坏文件内容的情况下,想尽一切办法压缩你的CSS,你可以借助压缩工具把注释和多余的空格、换行去掉。
CSS规范- 典型错误
不符合规范的选择器用法
.class{}
不要以一个没有类别的样式作为主选择器,这样的选择器只能作为后代选择器使用,比
如.m-xxx .class{}。
.m-xxx div{}
不要以没有语义的标签作为选择器,这会造成大面积污染,除非你可以断定现在或将来你的这个选择器不会污染其他同类。
.g-xxx .class{}
不要在页面布局中使用后代选择器,因为这个后代选择器可能会污染里面的元素。
.m-xxx .class .class .class .class{}
不要将选择器写的过于冗长,这会额外增加文件大小并且限制了太小范围的选择器,使树形结构过于严格应用范围过于局限,建议3-4个长度之内写完。
选择器并不需要完整反映结构嵌套顺序,相反,能简则简。
.m-xxx .m-yyy .zzz{}
不要越级控制,如果.zzz是.m-yyy的后代选择器,那么不允许.m-yyy之外的选择器控制或修改.zzz。
此时可以使用.m-yyy的扩展来修改.zzz,比如.m-yyy-1 .zzz{}。
扩展类使用错误
扩展类必须和其基类同时使用于同一个节点。
错误:class="g-xxx g-yyy-1" class="m-xxx-1" class="u-xxx u-yyy-1" class="xxx-yyy"。
正确:class="g-xxx g-xxx-1" class="m-xxx m-xxx-1" class="u-yyy u-yyy-1" class="xxx xxx-yyy"。
CSS规范- 最佳实践
最佳选择器写法(模块)
/* 这是某个模块 */
.m-nav{}/* 模块容器 */
.m-nav li,.m-nav a{}/* 先共性优化组合 */
.m-nav li{}/* 后个性语义化标签选择器 */
.m-nav a{}/* 后个性中的共性按结构顺序 */
.m-nav a.a1{}/* 后个性中的个性 */
.m-nav a.a2{}/* 后个性中的个性 */
.m-nav .z-crt a{}/* 交互状态变化 */
.m-nav .z-crt a.a1{}
.m-nav .z-crt a.a2{}
.m-nav .btn{}/* 典型后代选择器 */
.m-nav .btn-1{}/* 典型后代选择器扩展 */
.m-nav .btn-dis{}/* 典型后代选择器扩展(状态) */
.m-nav .btn.z-dis{}/* 作用同上,请二选一(如果可以不兼容IE6时使用) */
.m-nav .m-sch{}/* 控制内部其他模块位置 */
.m-nav .u-sel{}/* 控制内部其他元件位置 */
.m-nav-1{}/* 模块扩展 */
.m-nav-1 li{}
.m-nav-dis{}/* 模块扩展(状态) */
.m-nav.z-dis{}/* 作用同上,请二选一(如果可以不兼容IE6时使用) */
统一语义理解和命名
布局(.g-)
语义命名简写
文档doc doc
头部head hd
主体body bd
尾部foot ft
主栏main mn
主栏子容器mainc mnc
侧栏side sd
侧栏子容器sidec sdc
盒容器wrap/box wrap/box
模块(.m-)、元件(.u-)
语义命名简写
导航nav nav
子导航subnav snav
面包屑crumb crm
菜单menu menu
选项卡tab tab
语义命名简写标题区head/title hd/tt 内容区body/content bd/ct 列表list lst
表格table tb
表单form fm
热点hot hot 排行top top 登录login log 标志logo logo 广告advertise ad
搜索search sch 幻灯slide sld 提示tips tips 帮助help help 新闻news news 下载download dld 注册regist reg 投票vote vote 版权copyright cprt 结果result rst
标题title tt
按钮button btn
语义命名简写
输入input ipt
功能(.f-)
语义命名简写浮动清除clearboth cb 向左浮动floatleft fl
向右浮动floatright fr
内联块级inlineblock ib
文本居中textaligncenter tac 文本居右textalignright tar 文本居左textalignleft tal 垂直居中verticalalignmiddle vam 溢出隐藏overflowhidden oh 完全消失displaynone dn 字体大小fontsize fs
字体粗细fontweight fw
皮肤(.s-)
语义命名简写字体颜色fontcolor fc 背景background bg 背景颜色backgroundcolor bgc 背景图片backgroundimage bgi 背景定位backgroundposition bgp 边框颜色bordercolor bdc
状态(.z-)
语义命名简写选中selected sel 当前current crt
显示show show 隐藏hide hide 打开open open 关闭close close 出错error err 不可用disabled dis
(完整word版)WEB前端开发代码使用要求规范
WEB前端代码规范 规范目的 为提高团队协作效率,便于后台人员添加功能及前端后期优化维护,输出高质量的文档,特制订此文档。本规范文档一经确认,前端开发人员必须按本文档规范进行前台页面开发。本文档如有不对或者不合适的地方请及时提出,经讨论决定后方可更改。 基本准则 符合web标准;语义化html;结构、表现、行为分离;兼容性优良。页面性能方面,代码要求简洁明了有序,尽可能的减小服务器负载,保证最快的解析速度。 文件规范
3.jsp文件命名:英文驼峰式命名,文件名.jsp。按实际模块需求命名。 4.css文件命名:英文驼峰式命名,文件名.css。共用base.css,首页index.css,其他 页面按实际模块需求命名。 5.js文件命名:英文驼峰式命名,文件名.js。共用common.js,其他依实际模块需求命 名。 html书写规范 1.文档类型声明及编码:统一为html5的声明类型;编码统一为 ,书写时利用IDE实现层次分明的缩进。 2.非特殊情况下css文件必须在
...之间引入,选择link方式引入而非 @import形式。 3.非特殊情况下js文件必须在页面底部引入。 4.引入样式文件或JavaScript文件时,须略去默认类型声明,写法如下:11.语义化html,如标题根据重要性用h1-h6(同一页面只能有一个h1),段落标记用p,列表 用ul,内联元素中不可嵌套块状元素。 12.尽可能减少div的嵌套层数。 13.在页面中尽量避免使用内嵌样式表,即在标签内使用style="…"。 14.以背景形式呈现的图片,尽量写入css样式中;重要图片必须加上alt属性; 15.特殊符号使用:尽可能使用代码替代:比如<(<)、>(>)、空格( )、&(&)、 ”(")等等; 16.尽量避免使用过度复杂的HTML结构。 css书写规范 1.编码统一为utf-8。 2.为了避免一些浏览器兼容性问题以及增加样式重用性,每个页面必须引入base.css(详见 附件一),此文件不可随意修改。 3.class与id的使用:id是唯一的并是父级的,class是可以重复的并是子级的,所以id 仅使用在大的模块上,class可用在重复使用率高及子级中。 4.为JavaScript预留钩子的命名,请以js_起始,比如:js_hide,js_show。 5.class与id命名:使用英文命名,命名要语义化,简明化,但不要使用诸如first,last 之类的命名。使用驼峰式和下划线分隔相结合的命名规则,即命名应以父级加子级的命名规范,如:父级的类为simple 子级的类应该为simple_first,以此类推,但是尽量避免出现超过四级的类命名。 6.css属性书写顺序,建议遵循:自身属性-->布局定位属性-->文本属性-->其他属性。此条 可根据自身习惯书写,但尽量保证同类属性写在一起。
Web前端开发规范手册
Web前端开发规范手册 一、规范目的 1.1 概述 (1) 二、文件规范 2.1 文件命名规则 (1) 2.2 文件存放位置 (2) 2.3 css 书写规范 (3) 2.4 html书写规范 (7) 2.5 JavaScript书写规范 (11) 2.6 图片规范 (12) 2.7 注释规范 (13) 2.8 css 浏览器兼容 (13) 一、规范目的 1.1 概述 为提高团队协作效率, 便于后台人员添加功能及前端后期优化维护, 输出高质量的文档, 特制订此文档. 本规范文档一经确认, 前端开发人员必须按本文档规范进行前台页面开发. 本文档如有不对或者不合适的地方请及时提出, 经讨论决定后可以更改此文档. 二、文件规范 2.1 文件命名规则 文件名称统一用小写的英文字母、数字和下划线的组合,其中不得包含汉字、空格和特殊字符;命名原则的指导思想一是使得你自己和工作组的每一个成员能够方便的理解每一个文件的意义,二是当我们在文件夹中使用“按名称排例”的命令时,同一种大类的文件能够排列在一起,以便我们查找、修改、替换、计算负载量等等操作。
a. HTML的命名原则 引文件统一使用index.htm index.html index.asp文件名(小写) 各子页命名的原则首先应该以栏目名的英语翻译取单一单词为名称。例如: 关于我们\ aboutus 信息反馈\ feedback 产品\ product 如果栏目名称多而复杂并不好以英文单词命名,则统一使用该栏目名称拼音或拼音的首字母表示; 每一个目录中应该包含一个缺省的html 文件,文件名统一用index.htm index.html index.asp; b. 图片的命名原则 图片的名称分为头尾两部分,用下划线隔开,头部分表示此图片的大类性质 例如:广告、标志、菜单、按钮等等。 放置在页面顶部的广告、装饰图案等长方形的图片取名:banner 标志性的图片取名为:logo 在页面上位置不固定并且带有链接的小图片我们取名为button 在页面上某一个位置连续出现,性质相同的链接栏目的图片我们取名:menu 装饰用的照片我们取名:pic 不带链接表示标题的图片我们取名:title 范例:banner_sohu.gif banner_sina.gif menu_aboutus.gif menu_job.gif title_news.gif logo_police.gif logo_national.gif pic_people.jpg 鼠标感应效果图片命名规范为"图片名+_+on/off"。 例如:menu1_on.gif menu1_off.gif c. javascript的命名原则 例如:广告条的javascript文件名为ad.js 弹出窗口的javascript文件名为pop.js d. 动态语言文件命名原则 以性质_描述,描述可以有多个单词,用“_”隔开,性质一般是该页面得概要。 范例:register_form.asp register_post.asp topic_lock.asp 2.2 文件存放位置规范 _Root cn 存放中文HTML文件 en 存放英文HTML文件 flash 存放Flash文件 images 存放图片文件 imagestudio 存放PSD源文件 flashstudio 存放flash源文件 inc 存放include文件 library 存放DW库文件 media 存放多媒体文件 project 存放工程项目资料
前台编码规范(HTML, JS, CSS)
密级:内部1引言 (2) 1.1编写目的 (2) 1.2变更记录 (2) 1.3定义 (2) 1.4参考资料 (2) 2HTML (2) 2.1命名 (2) 2.2标签 (3) 2.3排版 (3) 2.4CSHTML (3) 3JS (3) 3.1组织 (3) 3.2命名 (4) 3.3变量 (4) 3.4方法 (4) 3.5对象及控件 (4) 3.6第三方库 (4) 3.7排版 (4) 3.8AJAX (5) 4CSS (5) 4.1组织 (5) 4.2命名 (5) 4.3兼容性 (5) 4.4第三方库 (6) 4.5排版 (6)
前台编码规范 1引言 1.1编写目的 帮助开发团队形成一致的前台编码风格,并指出某些容易引发BUG的不良编码习惯,预期读者为长沙安晨信息科技有限公司的全体开发人员。 1.2变更记录 版本号作者日期备注 1.0Aaron7/1/2014 1.1Aaron7/31/2014Add examples 1.2Aaron8/4/2014Update the format 1.3定义 术语定义备注 HTML Hypertext Markup Language JS Javascript CSS Cascading Style Sheet 1.4参考资料 2HTML 2.1命名 文件名采用帕斯卡命令法,所有单词首字母大写,词汇缩小可以全部大写,单词间不加任何连接符。例如“UserLogin.cshtml”
?文件名应见名知义,能清晰描述页面主要功能,例如“AddUser.cshtml”。 2.2标签 ?所有标签都应该正确关闭,例如“
,
web前端开发岗位职责
web前端开发岗位职责 1、前端开发工程师岗位职责 1、根据工作安排高效、高质地完成代码编写,确保符合规范的前端代码规范; 2、负责公司现有项目和新项目的前端修改调试和开发工作; 3、与设计团队紧密配合,能够实现实现设计师的设计想法; 4、与后端开发团队紧密配合,确保代码有效对接,优化网站前端性能; 5、页面通过标准校验,兼容各主流浏览器。 2、WEB前端开发工程师的岗位职责 岗位职责: 1、协助系统架构设计师进行系统架构设计工作; 2、承担WEB前端核心模块的设计、实现工作; 3、承担主要开发工作,对代码质量及进度负责; 4、参与进行关键技术验证以及技术选型工作; 5、和产品经理沟通并确定产品开发需求。 3、web前端开发的岗位职责 在以前可能大部分的人都没有听过什么web前端,最多的就是网页设计或者语言开发。现在几乎所有的网络公司都有web前端的职位,甚至没有web前端都不好意思说自己是网络技术公司。那么现在学习web前端火不火呢?Web前端在公司主要是做什么呢? 先说说前端技术和后端技术的区别:用互联网来做比喻,凡是通过浏览器到用户端计算机的统称为前端技术.相反存贮于服务器端的统称为后端技术。前端技术包括JavaScript、ActionScript、CSS、xHTML等“传统”技术与Adobe AIR、Google Gears,以及概念性较强的交互式设计,艺术性较强的视觉设计等等.
前端开发工程师(或者说“网页制作”、“网页制作工程师”、“前端制作工程师”、“网站重构工程师”),这样的一个职位的主要职责是与交互设计师、视觉设计师协作,根据设计图用HTML和CSS完成页面制作。同时,在此基础之上,对完成的页面进行维护和对网站前端性能做相应的优化。另外,一名合格的前端开发工程师,应该具有一定的审美能力和基础的美工操作能力,能很好的与交互及视觉协作。 以上可以看出,要成为一名合格的前端开发人员,需要掌握的技术是非常多的,web前端的岗位也是非常具有挑战性的,因此想要加入web前端的人员,选择专业的学习机构是很必要的,笔者知道的北京八维教育有web前端课程。 4、web开发岗位职责 1. 负责网站前后台的修改和升级,根据网站业务需要开发,制作和程序修改。 2. 参与制定网站研发方案以及,升级方案。 3. 参与网站研发,按照要求按时按质按量的完成网站编程开发技术工作。 4. 负责网站上线前的测试。 5. 负责对网站软硬件设施进行安全和稳定性巡检;并负责统计和监视系统日志。 6. 协助公司各部门,满足和协调公司各相关部门提出的网站技术需求。 7. 负责网站日常运行的技术维护工作,对出现的问题积极有效的进行处理。 .
网页设计中的CSS样式代码详解
CSS 背景属性 属性 描述 值 IE F N W3C background 简写属性,作用是将背景属性设置在一个声 明中。 background-color background-image background-repeat background-attach ment background-positi on 4 1 6 1 background-attachment 背景图像是否固定或 者随着页面的其余部 分滚动。 scroll fixed 4 1 6 1 background-color 设置元素的背景颜色。 color-rgb color-hex color-name transparent 4 1 4 1 background-image 把图像设置为背景。 url none 4 1 4 1 background-position 设置背景图像的起始 位置。 top left top center top right center left center center center right bottom left bottom center bottom right x-% y-% x-pos y-pos 4 1 6 1 background-repeat 设置背景图像是否及 如何重复。 repeat repeat-x repeat-y no-repeat 4 1 4 1 CSS 边框属性 (border)
border-bottom 简写属性。作用是在一个声明中用来设置下边框 的所有属性。 ? border-bottom-w idth border-style border-color 4 1 6 1 border-bottom-color 设置下边框的颜色。 border-color 4 1 6 2 border-bottom-style 设置下边框的样式。 border-style 4 1 6 2 border-bottom-width 设置下边框的宽度。 thin medium thick length 4 1 4 1 border-color 设置四个边框的颜色,可以设置一到四个颜色。 color 4 1 6 1 border-left 简写属性。用于在一个声明中设置左边框的所有 属性。 border-left-wid th border-style border-color 4 1 6 1 border-left-color 设置左边框的颜色。 border-color 4 1 6 2 border-left-style 设置左边框的样式。 border-style 4 1 6 2 border-left-width 设置左边框的宽度。 thin medium thick length 4 1 4 1 border-right 简写属性。将所有用于右边框的属性设置于一个 声明中。 ? border-right-wi dth border-style border-color 4 1 6 1 border-right-color 设置右边框的颜色 border-color 4 1 6 2 border-right-style 设置右边框的样式 border-style 4 1 6 2 border-right-width 设置右边框的宽度。 thin medium thick length 4 1 4 1 border-style 设置四个边框的样式,可以设置一到四个样式。 none hidden dotted dashed solid 4 1 6 1
(完整word版)WEB前端开发代码使用要求规范.docx
实用文档 WEB前端代码规范 规范目的 为提高团队协作效率,便于后台人员添加功能及前端后期优化维护,输出高质量的文档,特制订此文档。本规范文档一经确认,前端开发人员必须按本文档规范进行前台页面开发。本文档如有不对或者不合适的地方请及时提出,经讨论决定后方可更改。 基本准则 符合 web标准;语义化 html ;结构、表现、行为分离;兼容性优良。页面性能方面,代 码要求简洁明了有序,尽可能的减小服务器负载,保证最快的解析速度。 文件规范 1.Html, css ,js ,images 文件均归档至相应约定的目录中。 css images backStage js 后台模?? css WebRoot images frontStage js WEB-INF 前台模?? 全局公共模?? 2. html 文件命名:英文驼峰式命名,文件名.html 。按实际模块需求命名。
3.jsp 文件命名:英文峰式命名,文件名 .jsp 。按模需求命名。 4.css 文件命名:英文峰式命名,文件名 .css 。共用 base.css ,首 index.css ,其他面按模 需求命名。 5.js 文件命名:英文峰式命名,文件名 .js 。共用 common.js,其他依模需求命名。 html 书写规范 1. 文档型声明及:一html5的声明型;一 ,写利用IDE 次分明的。 2.非特殊情况下 css 文件必在
... 之引入, link 方式引入而非 @import 形式。 3.非特殊情况下 js 文件必在面底部引入。 4.引入式文件或 JavaScript 文件,略去默型声明,写法如下: 5.引入 JS 文件,文件名包含名称及版本号及是否版,比如: jquery- 1.4.1.min.js ; 6.引入插件,文件名格式名称 +插件名称,比如: jQuery.cookie.js 。 7.所有 HTML嵌套必是正确的,禁止出多出或者少出合的情况。 8.所有均遵循 xhtml 准,、属性、属性命名必由小写字母及下划数字成, 且所有必合,包括br() ,hr(
) 等;属性必用双引号包括。 9.充分利用无兼容性的 html 自身,比如 span、em、strong 、optgroup 、label ?? 10.需要 html 元素添加自定属性的候,首先要考下有没有默的已有的合适去 置,如果没有,以 "data-" 前来添加自定属性,避免使用 "data :" 等其他命名方式。
前端规范说明文件
规范的目的 规范不是标准,在不同公司代码规范是有差异的。规范的作用只是让同一个团队代码风格统一,减少协作时的复杂性,便于前端开发人员输出更易维护、更高性能和更安全的前端代码,特定制该文档。本文档一经确认,前端开发人员必须按照本文档规范进行前台页面开发,本文档如有不对或者不合适的地方请及时提出,经讨论决定后可以更改此文档. WEB前端人员具备如下7点技能: 1、页面标记语言:编写语义良好、简洁的HTML代码。 2、页面样式:合理的利用CSS的组合和继承特性来编写简洁、可维护性好的CSS代码。 3、前端编程:JavaScript是一种基于对象和事件驱动的、灵活的脚本语言,是动态交互的技术基础。开发人员在熟悉语法和编码之外,还需要了解并解决在不同浏览器中的JavaScript兼容问题。 4、跨平台、跨浏览器:如何在众多移动平台、众多屏幕尺寸上展现友好的WEB站点。虽然目前前端框架已经解决了大部分兼容问题,还是需要了解熟悉常见的浏览器兼容方法,主要包括:IE8的兼容,HTML5中新特性的兼容。 5、前端框架:前端框架很大程度上降低了前端开发难度。作为前端工程师需要熟悉一些常用的框架的使用方法,并且要了解如何编写常用框架的扩展插件。 6、调试工具:常用浏览器自带调试工具。 7、沟通能力:WEB前端开发介于UI设计和后端逻辑开发之间。因此WEB前端在开发中必定会和UI设计及后端开发合作。前端开发需要和UI设计沟通,确定效果是否可以实现及实现的代价,并对UI设计提出建议;还需要和后端开发沟通,确定前后端交互的接口以及传输的数据实体结构等。良好的沟通会让这些过程变得轻松。 前端代码规范主要针对的是HTML、CSS和JavaScript代码。规范的前端代码应该具有以下特征: 1、符合标准:所谓的标准指的是W3C制定的Web标准。主要由3个部分组成:结构标准、表现标准和行为标准。 a)结构标准包含XML、XHTML、HTML标准。HTML5是XHTML和HTML的最新标准。目前使用的标准是HTML5 标准; b)表现标准主要是指CSS样式标准,目前使用的标准是CSS3; c)行为标准主要包括ECMAScript和DOM标准,目前使用的ECMAScript标准是ECMAScript262第5版,DOM 标准是DOM级别2。 2、格式规范统一:前端代码格式主要包括命名、代码缩进、空格和空行的使用及代码注释。 a)命名主要有HTML元素ID和Class名,JavaScript中函数和变量的命名; b)HTML、CSS和JavaScript代码中都需要缩进代码来体现代码层次关系; c)空格和空行主要用在CSS和JavaScript中,用来提高代码可读性; d)CSS和JavaScript代码中都需要添加必要的注释来解说代码文件及代码片段,HTML代码中使用注释的情况
《CSS样式表的使用》教学设计
一课时 本次课设计课时为2课时。 二教材分析 (一)知识内容分析 本课内容选自高等教育出版社的《网页设计与制作(HTML+CSS+JavaScript)》,第四章《CSS 的应用》,设计课时为2个课时。本章在整个课程体系里起到承上启下的作用,它既是对前面的基础章节的综合深化,又开启了后续DIV+CSS知识对接。在本课之前,学生基本掌握网页制作的主要知识点,有一定的代码基础。而本课内容CSS样式表的使用是学生进行网页设计的基础和提高。学生通过理解CSS样式、选择器的概念,掌握应用外部CSS样式表、修改CSS选择器属性的方法来设计和美化网页,并能对所设计的作品进行评价,培养学生的设计、审美能力及职业素养和创新精神。本次教学活动对学生的网页制作与设计起着基础、提高作用。 (二)我对教材的处理方法 1、把教材所涉及的知识点进行分层,使学生由简入深理解和掌握CSS样式表的使用。 2、对教材内容进行二次处理,制作原创案例,使内容更加适合我班学生学习。 3、由CSS样式表的使用引导学生对网页界面设计的分析。 三学生分析 教学对象为我校计算机应用专业中职二年级的学生。学生学习网页制作已有一个学期,对这节课之前的学生情况分析如下: (一)学生知识能力分析 1、学生能熟练使用Dreamweaver软件 2、对于静态页面的设计有一定的基础 3、学生有简单的代码基础 4、在以往的学习过程中有简单接触过嵌入式的CSS样式 5、学生缺乏动手能力 6、对作品的评价缺乏系统的认识和理解 7、学生技能水平出现分化现象 (二)学生自学能力分析 我在课堂教学过程中,注重在学生认知水平能够承受的前提下安排一些适合自学的内容让学生自己掌握,从中培养学生的自学能力。开始自学的内容简单,等学生认为自学不是一件很难的事情
前端开发设计规范
前端开发设计规范 目录 前端开发设计规范 (1) 一、HTML使用规范 (1) 1.1、页面文件命名规范 (1) 1.2、页面head部分书写规范 (1) 1.3、HTML元素开发规范 (2) 1.3.1、HTML元素书写规范 (2) 1.3.2、HTML元素命名规范 (3) 二、WEB页面开发规范 (4) 2.1、错误跳转页面的处理 (4) 2.2、提示信息的处理 (4) 2.3、页面的返回 (4) 2.4、提交前数据的判断验证 (4) 2.5、删除操作 (5)
2.6、页面中java代码的使用 (5) 2.7、网站页面布局规范 (5) 2.7.1、前台页面尺寸 (5) 2.7.2、标准网页广告图标规格(参考) (6) 2.7.3、页面字体 (6) 2.7.4、字体颜色 (7) 三、javaScript开发规范 (7) 3.1、javaScript文件命名规范: (7) 3.2、javaScript开发规范 (7) 3.2.1、javaScript书写规范 (7) 3.2.2、javaScript命名规范 (8) 四、css样式规范 (10) 4.1、css样式文件命名规范 (10) 4.1.1、通用样式文件命名规范: (10) 4.1.2、业务类样式文件命名规范 (10) 4.1.3、css样式文件命名须知 (11)
4.2、css样式文件存放目录规范 (11) 4.3、css样式定义规范 (11) 4.3.1、css样式内容顶部注释规范 (11) 4.3.2、css样式内容注释规范 (12) 4.3.3、css样式定义规范 (12) 4.3.4、css样式常用id的命名 (13) 4.3.5、css样式常用class的命名 (16) 4.4、css样式书写规范 (16) 4.4.1、css样式排版规范 (16) 4.4.2、css样式书写风格规范 (16) 4.4.3、css样式属性定义顺序规范 (17) 4.4.4、css样式其他规范 (18) 4.4.5、css样式 Hack的使用 (19) 4.4.6、字体定义规范 (19) 4.4.7、css样式检测 (20) 4.4.8、注意事项 (20)