美文网首页
2019-11-27

2019-11-27

作者: 那片海没有风 | 来源:发表于2019-11-27 10:59 被阅读0次

css规范

缩进

  • [强制] 使用 2 个空格 或 tab 字符做为一个缩进层级。
.selector {
  margin: 0;
  padding: 0;
}

1 空格

  • [强制] 选择器 与 { 之间必须包含空格。
/* good */
.select {
}

/* bac*/
.select{
}
  • [强制] 属性名 与之后的 : 之间不允许包含空格, : 与 属性值 之间必须包含空格。
/* good */
margin: 0;

/* bad*/
margin : 0;

/* bad*/
margin:0;
  • [强制] 列表型属性值 书写在单行时,, 后必须跟一个空格。
/* good */
font-family: Arial, sans-serif;

/* bad*/
font-family: Arial,sans-serif;

2 选择器

  • [强制] 如无必要,不得为 id、class 选择器添加类型选择器进行限定。
/* good */
#error,
.danger-message {
    font-color: #c00;
}

/* bad */
dialog#error,
p.danger-message {
    font-color: #c00;
}
  • [建议] 选择器的嵌套层级应不大于 3 级,位置靠后的限定条件应尽可能精确。
/* good */
#username input {}
.comment .avatar {}

/* bad */
.page .header .login #username input {}
.comment div * {}
  • [强制] 当一个 rule 包含多个 selector 时,每个选择器声明必须独占一行
/* good */
.post,
.page,
.comment {
    line-height: 1.5;
}

/* bad */
.post, .page, .comment {
    line-height: 1.5;
}
  • [强制] >、+、~ 选择器的两边各保留一个空格。
/* good */
main > nav {
    padding: 10px;
}

label + input {
    margin-left: 5px;
}

input:checked ~ button {
    background-color: #69C;
}

/* bad */
main>nav {
    padding: 10px;
}

label+input {
    margin-left: 5px;
}

input:checked~button {
    background-color: #69C;
}

-[强制] 属性选择器中的值必须用双引号包围。

/* good */
article[character="juliet"] {
    voice-family: "Vivien Leigh", victoria, female
}

/* bad */
article[character='juliet'] {
    voice-family: "Vivien Leigh", victoria, female
}

2 属性

  • [强制] 属性定义必须另起一行。
/* good */
.selector {
    margin: 0;
    padding: 0;
}

/* bad */
.selector { margin: 0; padding: 0; }
  • [强制] 属性定义后必须以分号结尾。
/* good */
.selector {
    margin: 0;
}

/* bad */
.selector {
    margin: 0
}
  • [建议] 在可以使用缩写的情况下,尽量使用属性缩写。
/* good */
.post {
    font: 12px/1.5 arial, sans-serif;
}

/* bad */
.post {
    font-family: arial, sans-serif;
    font-size: 12px;
    line-height: 1.5;
}

-** [建议] 使用 border / margin / padding 等缩写时,应注意隐含值对实际数值的影响,确实需要设置多个方向的值时才使用缩写。**

3 值与单位

3.1单位

  • [强制] 当数值为 0 - 1 之间的小数时,省略整数部分的 0
/* good */
panel {
    opacity: .8;
}

/* bad */
panel {
    opacity: 0.8
}
  • [强制] 长度为 0 时须省略单位。 (也只有长度单位可省)
/* good */
body {
    padding: 0 5px;
}

/* bad */
body {
    padding: 0px 5px;
}

3.2 url()

-[强制] url() 函数中的路径不加引号。

body {
    background: url(bg.png);
}
  • [建议] url() 函数中的绝对路径可省去协议名。
body {
    background: url(//baidu.com/img/bg.png) no-repeat 0 0;
}

3.3 长度

-** [强制] 长度为 0 时须省略单位。 (也只有长度单位可省)**

/* good */
body {
    padding: 0 5px;
}

/* bad */
body {
    padding: 0px 5px;
}

3.4 颜色

  • 颜色值可以缩写时,必须使用缩写形式。
/* good */
.success {
    background-color: #aca;
}

/* bad */
.success {
    background-color: #aaccaa;
}

-[强制] RGB颜色值必须使用十六进制记号形式 #rrggbb。不允许使用 rgb()。
解释:
带有alpha的颜色信息可以使用 rgba()。使用 rgba() 时每个逗号后必须保留一个空格。

/* good */
.success {
    box-shadow: 0 0 2px rgba(0, 128, 0, .3);
    border-color: #008000;
}

/* bad */
.success {
    box-shadow: 0 0 2px rgba(0,128,0,.3);
    border-color: rgb(0, 128, 0);
}
  • [强制] 颜色值不允许使用命名色值。
/* good */
.success {
    color: #90ee90;
}

/* bad */
.success {
    color: lightgreen;
}
  • [建议] 颜色值中的英文字符采用小写。如不用小写也需要保证同一项目内保持大小写一致。
/* good */
.success {
    background-color: #aca;
    color: #90ee90;
}

/* good */
.success {
    background-color: #ACA;
    color: #90EE90;
}

/* bad */
.success {
    background-color: #ACA;
    color: #90ee90;
}

参考
css规范

相关文章

  • 11月27日

    2019-11-27 毛雅亭 字数 633 · 阅读 5 2019-11-11 08:16 ...

  • Mr. L 的ScalersTalk第五轮《新概念》朗读持续力训

    2019-11-27, starting at 2019-10-11 新概念英语第二册 Lesson 48: Di...

  • 文先森的日常--剩15天

    日精进打卡第453天 姓名:李文杰 (四爷); 公司:中国太平人寿; 日期:2019-11-27 【知~学习】 《...

  • 2019-11-28

    2019-11-27 【日精进打卡第 613 天 【知~学习】 《六项精进》大纲 4 遍共 2308 遍 《大学》...

  • 《旅程》-闻禾学写诗

    《旅程》2019-11-27 站在你身后, 默默 等你回头 跟着你前行 心 向着你走! 跟在你身后 默默 等你回眸...

  • Snail的ScalersTalk第五轮新概念朗读持续力训练Da

    Day48 2019-11-27 • 标题:Snail的ScalersTalk第五轮新概念朗读持续力训练Day48...

  • 给你给我

    ——2019-11-27—— 原标题Aldo|写给你的》1710 1308怎可让wq轻易示人我可是付湘饭伢~王维家...

  • 愚公移山实录

    扎实学“愚公”,定能把“山”移 ——观周枫林老师2019-11-27 00:30 时间:2019年11月26日 授...

  • 沧海拾遗|bot集锦

    ——2019-11-27—— 2145泄私愤的代价》eg被当人质 有勇无谋一般都炮灰。 《希望的大地》看起来不比《...

  • 当下对React.js的再思考

    Time: 2019-11-27 之前在比赛中写前端工程时,使用了如下几个关键的技术点: redux,负责应用状态...

网友评论

      本文标题:2019-11-27

      本文链接:https://www.haomeiwen.com/subject/fyouwctx.html