如果你曾经收藏过许多关于CSS的最佳实践但还没开始利用它们,那么这篇文章将帮助你制作一个很好且很有组织的CSS文件来应用于一些CSS最佳实践。在这里我将为为我的下一个项目制作一个基本的CSS模板文件。使用标准的重设(Reset)方法,定义一些基本的方便的类,命名一些常见的页面区域等…
您还可以参考以下前端开发/CSS相关资源:
《目前比较全的CSS重设(reset)方法总结》
《使用CSS创建三列固定布局结构》
《精选15个国外CSS框架》
《CSS代码命名惯例语义化的方法》
《整理及优化CSS代码的7个原则》
在开始之前,创建一个新建文件夹并将它命名为”styles”(您也可以命名自己喜欢的名字),然后在该文件夹下创建两个文件分别命名为“reset.css” 和 “style.css”。现在你的文件夹结构不出意外的话应该是这样的:
–root
|
styles
– reset.css
– style.css
|
1-单独使用一个全局CSS重设方法
我以Eric Meyer的重设为基础。只是去掉了其中的“ins”, “del”和 “table”,因为我实在是很少使用它们,因为某些原因又重新定义了“strong” 和 “em”,我知道您也许会有自己的方式,所以您也可以*为自己的文件定义。写完CSS重设后,将其存储为”reset.css”。
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: transparent;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
content: ”;
content: none;
}
:focus {
outline: 0;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
caption, th, td {
text-align: left;
font-weight: normal;
}
strong {
font-weight: bold;
}
em {
font-style: italic;
}
在这个重设文件里我去掉了“body”样式,因为通常我们在不同的项目中都会定义不同的”body”样式,所以我们将它放在style.css文件中。
2-在顶部为样式表添加描述注释
现在我们打开style.css来开始写一些基本的样式。在创建一个新样式文件(style.css)后,第一件事应该是在文件顶部写一些结构性的注释,用来描述一些样式的细节,比如版本、作者、作者的详细联系方式等,这将帮助你和其他前端开发人员使用该文件。描述细节应当包括像作者姓名、版本和提供更多信息的URL地址。我比较喜欢WordPress格式,因为它比较广泛。
/*
主题名称: 玫瑰主题
URI: the-theme’s-homepage
描述: a-brief-description
作者: 您的姓名
作者 URI: 您的-URI
模板: 在这里可以提示它的父级模板
版本: 版本号彬Go-集前端开发/网页设计/网站可用性/用户体验于一体的趣味互联网生活
网址:http://blog.bingo929.com/
*/
3-定义便于搜索的目录表
现在,我们来一起定义我们样式的目录表。定义TOC能帮助其他人甚至自己更容易与阅读和理解代码。也许您会觉得这个没什么必要,但请相信我!
首先让我们看看它应当是什么样子的:
[目录表]
0- Reset
1- Global
2- Links
3- Headings
4- Header
5- Navigation
6- Middle
7- Forms
8- Extras
9- Footer
正如您看到的,我们将目录表从0到9分成10部分。
- TOC非常简单以至于它不会花费您超过1分钟的时间。
- 您不用为每个项目定义不同的TOC。
- 命名的使用非常普遍,所以可以适合模本的任何部分。
- 不使用动态的#ID和.class。
- 它并不大所以不会占用很多Kbytes。
- 顺序的数字很有用,用途请往下看。
4-使用注释将每个部分隔开并使用一个=标记
请看一下样式,在0部分我将之前的重设样式表reset.css导入。
/* =0 Reset
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
@import url(‘reset.css’);
/* =1 Global
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =2 Links
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =3 Headings
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =4 Header
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =5 Navigation
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =6 Middle
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =7 Form
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =8 Extra
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =9 Footer
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
在每个部分的分区注释中使用=标记,可以帮助您和您的团队其他成员快速找到需要的代码。大家都知道,在CSS样式中的声明几乎是不会使用等号的,所以我们可以使用等号来帮助搜索。比如你想寻找表单的相关样式代码,可以先查看目录表中表单对应的数字,然后搜索”=7″便可以快速跳转到表单的相关代码区域。
5-定义最常用的类
其实有一些类是我们要经常使用的,那我们为什么不一次性把它们都定义好呢?现在正是时候!我添加了一些个人比较喜欢的,当然您也可以按照自己的喜好进行增删改。将它们定义在“=1 Global”下。
我还把body选择器定义在了Global中。
注:一下定义类仅仅是比较简单的一些。
/* =1 Global
–––––––––––––––––––––––––––––––––––––––––––––––––––*/
body {
line-height: 1;
font: normal 12px Arial, Helvetica, sans-serif;
vertical-align: top;
background: #fff;
color: #000;
}
.right {
float: right;
}
.left {
float: left;
}
.align-left {
text-align: left;
}
.align-right {
text-align: right;
}
.align-center {
text-align:center;
}
.justify {
text-align:justify;
}
.hide {
display: none;
}
.clear {
clear: both;
}
.bold {
font-weight:bold;
}
.italic {
font-style:italic;
}
.underline {
border-bottom:1px solid;
}
.highlight {
background:#ffc;
}
img.centered {
display: block;
margin-left: auto;
margin-right: auto;
}
img.alignleft {
float:left;
margin:4px 10px 4px 0;
}
img.alignright {
float:right;
margin:4px 0 4px 10px;
}.clearfix:after {
content: “.”;
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
.clearfix {
display: block;
}
html[xmlns] .clearfix {
display: block;
}
* html .clearfix {
height: 1%;
}
6-为链接和标题定义样式
最后,我们来定义适当的链接和标题的样式,因为他们在任何项目中都是必需的。如果你在制作某个网页,你不可能不是用它们。
/* =2 Links
––––––––––––––––––––––––––––––––––––––––––––––––––*/
a:link, a:visited {
color: #333;
}
a:hover {
color: #111;
}
a:active {
color: #111;
}
/* =3 Headings
––––––––––––––––––––––––––––––––––––––––––––––––––*/
h1 {
font: bold 2em “Times New Roman”, Times, serif;
}
h2 {
font: bold 1.5em “Times New Roman”, Times, serif;
}
h3 {
font: bold 1.2em Arial, Geneva, Helvetica, sans-serif;
}
h4 {
font: bold 1em Arial, Geneva, Helvetica, sans-serif;
}
h5 {
font: bold 0.9em Arial, Geneva, Helvetica, sans-serif;
}
style.css模板的最终代码
/*
主题名称: 玫瑰主题
URI: the-theme’s-homepage
描述: a-brief-description
作者: 您的姓名
作者 URI: 您的-URI
模板: 在这里可以提示它的父级模板
版本: 版本号彬Go-集前端开发/网页设计/网站可用性/用户体验于一体的趣味互联网生活
网址: http://blog.bingo929.com/[目录表]
0- Reset
1- Global
2- Links
3- Headings
4- Header
5- Navigation
6- Middle
7- Forms
8- Extras
9- Footer*/
/* =0 Reset
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
@import url(‘reset.css’);
/* =1 Global
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
body {
line-height: 1;
font: normal 12px Arial, Helvetica, sans-serif;
vertical-align: top;
background: #fff;
color: #000;
}
.right {
float: right;
}
.left {
float: left;
}
.align-left {
text-align: left;
}
.align-right {
text-align: right;
}
.align-center {
text-align:center;
}
.justify {
text-align:justify;
}
.hide {
display: none;
}
.clear {
clear: both;
}
.bold {
font-weight:bold;
}
.italic {
font-style:italic;
}
.underline {
border-bottom:1px solid;
}
.highlight {
background:#ffc;
}
img.centered {
display: block;
margin-left: auto;
margin-right: auto;
}
img.alignleft {
float:left;
margin:4px 10px 4px 0;
}
img.alignright {
float:right;
margin:4px 0 4px 10px;
}.clearfix:after {
content: “.”;
display: block;
clear: both;
visibility: hidden;
line-height: 0;
height: 0;
}
.clearfix {
display: block;
}
html[xmlns] .clearfix {
display: block;
}
* html .clearfix {
height: 1%;
}
/* =2 Links
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
a:link, a:visited {
color: #333;
}
a:hover {
color: #111;
}
a:active {
color: #111;
}
/* =3 Headings
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
h1 {
font: bold 2em “Times New Roman”, Times, serif;
}
h2 {
font: bold 1.5em “Times New Roman”, Times, serif;
}
h3 {
font: bold 1.2em Arial, Geneva, Helvetica, sans-serif;
}
h4 {
font: bold 1em Arial, Geneva, Helvetica, sans-serif;
}
h5 {
font: bold 0.9em Arial, Geneva, Helvetica, sans-serif;
}
/* =4 Header
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =5 Navigation
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =6 Middle
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =7 Form
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =8 Extra
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
/* =9 Footer
–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––*/
总结
感谢大家阅读本文,CSS最佳实践在某种意义上的确会对我们提供很大的帮助。它可以帮助我们节省更多的工作时间,显著提高工作效率。如果您有任何看法或建议,欢迎评论。
下载源文件
留意更新
订阅彬Go以查看本文更新及前端开发最新教程及资源。
via:acomment
原载:彬Go——集前端开发/网页设计/网站可用性/用户体验于一体的趣味互联网生活
本文链接:http://blog.bingo929.com/css-best-practices-css-template-file.html
如需转载必须以链接形式注明原载或原文地址,谢谢合作