前端编码规范那些事

为了编写出更高可读性,结构更加清晰且冗余较少的代码,前端工程师们总结出了一些前端的编码规范,它们涵盖了前端的所有部分,包括HTML、CSS和JS,以下也是围绕这三个方面,对这些前端代码的编码规范做一个大致的复习和巩固。

一、HTML的编码规范

  • 首当其冲的自然就是<!DOCTYPE html>,文档类型声明。在不同的时期,<!DOCTYPE html>的写法有所不同,但它最重要的功能对文档的类型进行声明却从未更改,如果不添加该声明,浏览器渲染时会以怪异模式进行文档渲染。
文档类型声明
  • 语言类型和编码类型要写,他们通常的写法如下:(语言类型写在根节点<html>上,编码类型写在<meta>便签里):
语言类型和编码类型
  • JS引入写在<body>标签的最后可有效防止因为JS文件加载不出来而导致的白屏问题:
JS脚本引入的书写位置
  • 注重html的语义化,使用相应内容的标签:以下是推荐和不推荐的写法
语义化
  • 友好的图片,尽量写<img>标签alt和title属性,alt属性用于图片挂掉时对图片内容进行提示,title用于鼠标浮于图片上时进行内容提示(装饰性的图片无需填写,用于省字符数)
title属性作用
alt图片内容提示
  • H5引入CSS和JS时可以不写type属性,style标签默认type是CSS文件,script标签type默认是JS文件
引入外链
  • 引号问题,在HTML中的书写尽量使用双引号"",少使用单引号'',这点也要看公司的规定而言,但是引号的使用要统一,不要一下单引号一下双引号:
不推荐的引号用法
  • H5中,空白元素标签如link,meta,img,br,hr,input等,在结尾不需要添加/符号进行结束
空白标签的结束不需要'/'
  • 其它:1、注意嵌套标签的结束;2、JS和CSS尽量使用外链,有助于样式与内容的分离;3、尽量书写注释对HTML内容结构进行梳理;

二、CSS编码规范

  • CSS书写的顺序
    1.位置相关(position,float,display,top,right等);
    2.盒模型相关(width,height,margin,padding等);
    3.字体相关(size,color,family,line-height等);
    4.背景和边框(background,border);
    5.其它(transition等);
正确顺序
  • 尽量使用CSS缩写精简代码(字体,边框,内/外边距等)
CSS样式缩写
  • 选择器与后面的'{'要有一个空格,样式属性与值之间要有一个空格
空格
  • 多个选择器同时用时要有换行
多选择器之间换行
  • 0不需要加单位,0.n的单位不需要写0
单位书写
  • 使用16进制颜色时,当每两位相同的可以进行缩写
颜色缩写
  • 其它:1、每条样式用;进行结尾;2、样式要进行缩进;3、尽量避免使用标签选择器,可以使用子选择器和兄弟选择器;

三、JS书写规范

  • 变量声明用var,多个变量命名可以用一个var,然后用逗号,进行分隔:
变量命名
  • 变量尽量写在变量声明中:
变量书写
  • 立即执行函数书写:尽量将整个函数包裹在括号内:
立即执行函数书写
  • 每个独立语句用;进行结束:
用分号进行语句结束
  • 其它规范:1、注意函数内部的缩进;2、尽量编写注释;3、格式对齐以及缩进;

四、命名规则

  • CSS选择器的命名规则
    1.命名用英文小写字母书写;
    2.命名体现出内容、功能或者样式(样式命名少用),注重语义化;
    3.多个单词的命名使用中横线-进行连接;
    4.id选择器在HTML中只在大区块上进行添加,尽量少用,其它可使用类选择器;
    5.命名如果采用缩写要使人能看懂,不要使用无意义的命名;
    6.属性的值要用双引号括起来,如:class = "nav";

  • JS的命名
    1.命名采用驼峰式命名,第一个单词小写,后面的单词首字母大写;
    2.函数的命名使用动词,或者动词+名词的形式;

五、总结

1.做到语义化,方便阅读和优化;
2.代码尽量简单,结构明晰,冗余少;
3.注意书写注释;
4.注意健壮性和可复用性;

文章著作权归饥人谷_大春和饥人谷所有,转载须说明来源

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,457评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,837评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,696评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,183评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,057评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,105评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,520评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,211评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,482评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,574评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,353评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,213评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,576评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,897评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,489评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,683评论 2 335

推荐阅读更多精彩内容

  • 在线阅读 http://interview.poetries.top[http://interview.poetr...
    程序员poetry阅读 114,104评论 24 450
  • 什么是html? html是一种网页标记语言,叫超文本标记语言,我们平时上网所看到的所有网页均来自于html,英文...
    波段顶底阅读 8,322评论 2 7
  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 13,703评论 1 92
  • 从此以后,再难过,也和你没关系
    轻舞飞扬MyAll阅读 206评论 0 0
  • 聊骚(尽量不让指针指到红线是OK的,拨动到女生的那个痒点就OK了) 聊骚可以较快的KLNO 比如:一开始 猜一猜星...
    CNBLUEone阅读 419评论 0 0