css综合

写代码需要遵守的编码规范

1. 命名技巧

语义化
  • 语义化标签优先
  • 基于功能命名、基于内容命名、基于表现命名
  • 简略、明了、无后患
范例

1.所有命名都使用英文小写
推荐:<div class="main"></div>
不推荐: <div class="Main"></div>
2.命名用引号包裹
推荐:<div id="header"></div>
不推荐: <div id=header></div>
3.用中横线连接
推荐:<div class="mod-modal"></div>
不推荐: <div class="modModal"></div>
4.命名体现功能,不涉及表现样式(颜色、字体、边框、背景等)
推荐:<div class="text-lesser"></div>
不推荐: <div class="light-grey"></div>

2.常见命名

.wrap.wrapper -- 用于外侧包裹
.container.ct -- 包裹容器
.header -- 用于头部
.body -- 页面 body
.footer -- 页面尾部
asidesidebar -- 用于侧边栏
.content -- 和header footer 对应,用于主要内容
.navigation -- 导航元素
.pagination -- 分页
.tabs > .tab -- tab 切换
.breadcrumbs -- 导航列表、面包屑
.dropdown -- 下拉菜单
.article -- 文章
.main -- 用于主体
.thumbnail -- 头像,小图像
.media -- 媒体资源
.panel -- 面板
.tooltip -- 鼠标放置上去的提示
.popup -- 鼠标点击弹出的提示
.button.btn -- 按钮
.ad -- 广告
.subnav -- 二级导航
.menu -- 菜单
.tag -- 标签
.message 或者 .notice -- 提示消息
.summary -- 摘要
.logo -- logo
.search -- 搜索框
.login -- 登录
.register -- 注册
.username -- 用户名
.password -- 密码
.banner -- 广告条
.copyright -- 版权
.modal 或者 .dialog -- 弹窗

var 名字 = {
  状态: [
    'inverse',
    'toggled',
    'switched',
    'original',
    'initial',
    'identified',
    'disabled',
    'loading',
    'pending',
    'syncing',
    'default'
  ],
  修饰: [
    'dark',
    'light',
    'shaded',
    'flat',
    'ghost',
    'maroon',
    'pale',
    'intense',
    'twisted',
    'narrow',
    'wide',
    'smooth',
    'separate',
    'clean',
    'sharp',
    'aligned'
  ],
  元素: [
    'pagination',
    'modal',
    'popup',
    'article',
    'story',
    'flash',
    'status',
    'state',
    'media',
    'block',
    'card',
    'teaser',
    'badge',
    'label',
    'sheet',
    'poster',
    'notice',
    'record',
    'entry',
    'item',
    'figure',
    'square',
    'module',
    'bar',
    'button',
    'action',
    'knob'
  ],
  布局: [
    'navigation',
    'wrapper',
    'inner',
    'header',
    'footer',
    'aside',
    'section',
    'divider',
    'content',
    'container',
    'panel',
    'pane',
    'construct',
    'composition',
    'spacing',
    'frame'
  ]
}

3.书写规范

  • tab 用两个空格表示
  • css的 :后加个空格, {前加个空格
  • 每条声明后都加上分号
  • 换行,而不是放到一行
  • 颜色用小写,用缩写, #fff
  • 小数不用写前缀, 0.5s -> .5s; 0不用加单位
  • 尽量缩写,margin: 5px 10px 5px 10px -> margin: 5px 10px
范例
/* Not recommended */
.test {
  display: block;
  height: 100px
}
/* Recommended */
.test {
  display: block;
  height: 100px;
}


/* Not recommended */
h3 {
  font-weight:bold;
}
/* Recommended */
h3 {
  font-weight: bold;
}


/* Not recommended: missing space */
#video{
  margin-top: 1em;
}

/* Not recommended: unnecessary line break */
#video
{
  margin-top: 1em;
}
/* Recommended */
#video {
  margin-top: 1em;
}


/* Not recommended */
a:focus, a:active {
  position: relative; top: 1px;
}
/* Recommended */
h1,
h2,
h3 {
  font-weight: normal;
  line-height: 1.2;
}


/* Always put a blank line (two line breaks) between rules. */
html {
  background: #fff;
}

body {
  margin: auto;
  width: 50%;
}


/* Not recommended */
@import url("//www.google.com/css/maia.css");

html {
  font-family: "open sans", arial, sans-serif;
}
/* Recommended */
@import url(//www.google.com/css/maia.css);

html {
  font-family: 'open sans', arial, sans-serif;
}

垂直居中有几种实现方式,给出代码范例

实现如下效果,每种效果都只使用一个html 标签来实现


实践

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.说一说你平时写代码遵守的编码规范 语义化·语义化标签优先·基于功能命名、基于内容命名、基于表现命名·简略、明了...
    FLYSASA阅读 250评论 0 0
  • 说一说你平时写代码遵守的编码规范常见的编码规范语义化:1.语义化标签优先2.基于功能命名、基于内容命名、基于表现命...
    24_Magic阅读 247评论 0 0
  • 编码规范 命名技巧语义化语义化标签优先基于功能命名、基于内容命名、基于表现命名简略、明了、无后患命名范例所有命名都...
    cccccccc7355608阅读 469评论 0 0
  • CSS编码规范 命名规范:语义化标签优先;基于功能命名、基于内容命名、基于表现命名;简略、明了、无后患 书写规范:...
    饥人谷_哈噜噜阅读 330评论 0 0
  • 编码规范 所有命名都使用英文小写 命名用引号包裹 用中横线连接 命名体现功能,不涉及表现样式(颜色、字体、边框、背...
    饥人谷_bigJiao阅读 226评论 0 0