web前端基本开发手册

---------------------------------css

一.概况html

1.1  WEB 标准web

二.实现WEB标准api

2.1  XHTMLCSS介绍浏览器

2.2  XHTML书写规范框架

2.2.1 XHTML结构ide

2.2.2 标签规范工具

2.3  XHTML经常使用标签介绍布局

2.4  CSS书写规范字体

2.4.1 表命名参考

2.4.2 类/ID命名规范

2.4.3 样式调用

2.4.4 样式简写

2.5  CSS经常使用属性介绍

2.6 图片规范

2.7 注释规范

2.8 浏览器兼容

 

概况

1.1 WEB 标准

WEB 标准不是一个标准,而是一系列标准的集合。网页主要由三部分组成:结构、表现和行为。对应的标准也分三方面:结构化标准语言主要包括XHTML和XML,表现标准语言主要包括 CSS,行为标准主要包括对象模型(如  W3C DOM)、ECMAScript 等。这些标准大部分由W3C起草和发布,也有一些是其余标准组织制订的标准,好比ECMA(European Computer Manufacturers Association)的 ECMAScript 标准。 

2、实现WEB标准

2.1  XHTML、CSS介绍

可扩展超文本置标语言(eXtensible HyperText Markup Language,XHTML),是一种置标语言,表现方式与超文本置标语言(HTML)相似,不过语法上更加严格。从继承关系上讲,HTML是一种基于标准通用置标语言(SGML)的应用,是一种很是灵活的置标语言,而XHTML则基于可扩展置标语言(XML),XML是SGML的一个子集。XHTML 1.0在2000年1月26日成为W3C的推荐标准。

级联样式表(Cascading Style Sheet)简称“CSS”,一般又称为“风格样式表(Style Sheet)”,它是用来进行网页风格设计的。好比,若是想让连接字未点击时是蓝色的,当鼠标移上去后字变成红色的且有下划线,这就是一种风格。经过设立样式表,能够统一地控制HTML中各标志的显示属性。级联样式表可使人更能有效地控制网页外观。使用级联样式表,能够扩充精确指定网页元素位置,外观以及建立特殊效果的能力。

2.2  XHTML书写规范

   2.2.1 XHTML结构

文档分为head 和body两个部分。
html文档中在head关标签后面必定会跟着body的开标签。html的开标签下面必定跟着head的开标签,body的关标签下面必定是html的关标签,这中间都是不能插入任何东西的。head和body在一个html中有且仅有一个。

head里面放置的内容是不会再页面里显示的。在页面中显示的内容放在body里

以下:
<!DOCTYPEhtml PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

样式地址、JS地址、样式等

</head>


<body>

浏览器能看到的内容部分

</body>
</html>

   2.2.2 标签规范

标签能够分为成对标签,或者是单标签。

成对标签好比 div span ol ul li select option table tr th td dl dt dd em var span等等,而单标签就比较少了 好比 input img br iframe 等。

完整的成对标签以下:<div>这是一个快标签</div> 或者

<ol>

<li>列表项一</li>

<li>列表项二</li>

<li>列表项三</li>

</ol>
能够看到每个标签都有开标前和关标签组成,内容放在开和关标签之间。

而单标签的标签应该这么写:

<br/>

<img src="images/1.gif" alt="图片描述"/>

<input type="button" value="按钮"/> ;

像这样的单标签,是不可能再嵌套任何内容的。而咱们把斜线(/)放在标签的后尖括号前面,表示标签结束。这点跟成对标签有很大区别。

全部标签必须合理嵌套

正确的嵌套

<div>

<span>

<var>1111</var>

</span>

</div>

就像一个一个大盒子套了一个小盒子 又套了一个小盒子,固然还能够继续嵌套,看起来十分对称。

不正确的嵌套

<div>

<span>

<var>1111</var>

</div>

</span>

这里的标签是不对称的。你无法一层一层的拆开盒子,这就是错误的。

2.3  XHTML经常使用标签介绍

一、div标签:块元素。能够将文档分为不一样的部分。可使用class和id属性进一步控制页面表现。div是css布局中使用最多的元素。

二、p标签:块元素,表示一个文本段落,通常用于换行。

三、标题标签:块元素,用来定义文本中的各类标题。从h1至h6有着严格的层级关系。而且每一个XHTML上h1元素有且只能使用一次。其中包括一系列的元素:h1,h2,h3,h4 ,h5,h6,其中每一个元素都对应有默认的字体样式其代码以下:

<h1>text</h1>

<h2>text</h2>

<h3>text</h3>

<h4>text</h4>

<h5>text</h5>

<h6>text</h6>

四、ul和li标签:块元素,无序列表,详见:http://www.w3school.com.cn/tags/tag_ul.asp

五、ol和li标签:块元素,有序列表,详见:http://www.w3school.com.cn/tags/tag_ol.asp

六、dl、dt、dd标签:块元素,经常使用于生成类表格别表,dt、dd位于dl内部。

详见:http://bbs.blueidea.com/thread-3023757-1-1.html

七、strong标签:内联元素,使文本以粗体显示。

八、a标签:内联元素,用于超连接(herf属性)和设置内部文档书签(ID或Name属性)。

九、em标签:内联元素,显示效果为文本斜体。

十、span标签:内联元素,用来区分文本中的一个部分。

十一、br标签:使文本换行。

十二、img标签:内联元素,用来插入图像文件,当使用img元素时候,其alt属性必须加上,属性内容将在图片不能加载的时候显示。

1三、label标签:触发鼠标事件,当鼠标事件做用于该元素时,也做用于相对应的input标签。

1四、input标签:根据不一样的 type 属性值,能够是文本字段、复选框、掩码后的文本控件、单选按钮、按钮等等。用于获取提交的数据。当input标签为单选按钮和复选框时,浏览器的兼容性比较差,须要细心调整。

1五、selectoption标签:下拉列表,option位于select内部。

1六、textarea标签:文本区域,用于输入多行文本文字。

1七、tabletrthtd标签:表格,不推荐使用。

2.4  CSS书写规范 

   2.4.1 表命名参考

驼峰命名法 例:myName

全局样式:global.css

框架布局:layout.css

字体样式:font.css

连接样式:link.css

打印样式:print.css

   2.4.2 类/ID命名规范

Container div #container 容器

Layout #layout 布局

Header or banner div #head, #header 页头部分

Footer div #foot, #footer 页脚部分

Navigation list #nav 主导航

Sub-navigation list #subNav 二级导航

Menu #menu 菜单

Sub Menu #submenu 子菜单

Left or right side columns #sidebar_a, #sidebar_b 左边栏或右边栏

Main div #main 页面主体

Tag #tag 标签

Message #msg #message 提示信息

Tips #tips 小技巧

Vote #vote 投票

Friend Link #friendlink 友情链接

Title #title 标题

Summary #summary 摘要

Search input #searchInput 搜索输入框

Search output #search_output 搜索输出和搜索结果类似

Search #search 搜索

Search bar #searchBar 搜索条

Search results #search_results 搜索结果

Copyright information #copyright 版权信息

brand #branding 商标

branding-logo #logo LOGO

Site information #siteinfo 网站信息

Copyright information etc. #siteinfoLegal 法律声明

Designer or other credits #siteinfoCredits 信誉

Join us #joinus 加入咱们

Partnership opportunities #partner 合做伙伴

Services #service 服务

Regsiter #regsiter 注册

Arrow arr/arrow 箭头

Little #little 标题

Website map #sitemap 网站地图

List #list 列表

Home page #homepage 首页

Sub page subpage 二级页面子页面

Toolbar #tool, #toolbar 工具条

Next pulls #drop 下拉

Next pulls menu #dorpmenu 下拉菜单

Status #status 状态

经常使用类的命名应尽可能以常见英文单词为准,作到通俗易懂,并在适当的地方加以注释。对于二级类/ID命名,则采用组合书写的模式,后一个单词的首字母应大写:诸如“搜索框”则应命名为“searchInput”、“搜索图标”命名这“searchIcon”、“搜索按钮”命名为“searchBtn”

   2.4.3 样式调用

页面内嵌法:就是将样式表直接写在页面代码的head区。

<style type=”text/css”>

body{background:white; color:black;}

</style>

外部样式表调用:将样式表写在一个独立的.css文件中,而后在页面head区用相似如下代码调用。

<link rel="stylesheet" type="text/css" href="css/style.css" />

在符合web标准的设计中,推荐使用外部调用法,能够不修改页面只修改.css文件而改变页面的样式。若是全部页面都调用同一个样式表文件,那么改一个样式表文件,能够改变全部文件的样式。

   2.4.4 样式简写

公共样式的缩写:

当两个或多个类有想通的属性值时,能够对属性值进行缩写。如:

.search{

padding-left:30px;

height: 35px;

color:#fff;

}

.foot{

padding-left:30px;

 height: 15px;

 color:#fff;

}

缩写为:

.search,.foot{

padding-left:30px;

color:fff;

}

.search{height:35px;}

.foot{height:15px;}

同一属性根据它的属性值也能够进行简写,如:

.search {

 

background-image:url(../images/icon.gif);

background-repeat: no-repeat;

background-position:left;

}

缩写为:

.search {

background:#333 url(../images/icon.gif) no-repeat left

}

颜色值的缩写:

RGB三个颜色值数值相同时,可缩写颜色值代码。如:

.menu { color:#ff3333;}

可缩写为:

.menu {color:#f33;}

CSS中关于内外侧边框的距离是按照上、右、下、左的顺序来排列的,当这四个属性值不一样时也可直接缩写,如:

.btn {

margin-top:10px;

margin-right:8px;

margin-bottom:12px;

margin-left:5px;

padding-top:10px;

padding-right:8px;

padding-bottom:12px;

padding-left:8px;

}

则可缩写为:

.btn {

Margin:10px 8px 12px 5px;

Padding:10px 8px 12px 5px;

}

而若是当上边与下边、左边与右边的边框属性值相同时,则属性值能够直接缩写为两个,如:

.btn {

margin-top:10px;

margin-right:5px;

margin-bottom:10px;

margin-left:5px;

}

缩写为:

.btn {margin:10px 5px;}

而当上下左右四个边框的属性值都相同时,则能够直接缩写成一个,如:

.btn {

margin-top:10px;

margin-right:10px;

margin-bottom:10px;

margin-left:10px;

}

缩写为:

.btn{margin:10px;}

一段完整的Css属性编写的顺序为:浮动、宽度、高度(行高)、内边距、外边距、字体、背景色、背景图、其余属性。 如:

.head{

float:left;

width:136px;

height:16px; 

padding:10px;

margin:10px;

font:normal 18px/24px "微软雅黑";

background:#333 url(../images/icon.gif) no-repeat left

display:block;

}

2.5  CSS经常使用属性介绍

字体属性(font)
大小 font-size:只要用数值就能够,单位:PX 

样式 font-style: normal;(正常)

行高 line-height:单位:PX

粗细 font-weight: bold;(粗体) normal;(正常)

大小写 text-transform: capitalize;(首字母大写) uppercase;(大写)none;()

修饰 text-decoration: underline;(下划线) none;()

经常使用字体: (font-family)通常用Tahoma(英文和数字更好看)、宋体、微软雅黑

背景属性 (background)

色彩

图片background-image: url(图片地址);

重复background-repeat: no-repeat;

滚动background-attachment: fixed;(固定) scroll;(滚动) 不多用

位置background-position: left(水平) top(垂直);

简写方法 background:#000 url(..) repeat fixed left top;

区块属性 (Block)

字间距letter-spacing: normal; 数值

text-align: left;(左对齐) right;(右对齐) center;(居中)

缩进text-indent: 数值em;通常一段话前面缩进为2em,表现形式为缩进两个汉字

垂直对齐vertical-align: baseline;(基线) sub;(下标) super;(下标) top; text-top;

middle; bottom; text-bottom;

显示display:block;() inline;(内嵌) 当两个属性同时用着的时候能够用

display:inline-block解决。

方框属性 (Box)

浮动floatleft左浮  right右浮  none 清除浮动

宽度width:数值  

高度height:数值  

内边距:padding   上右下左

外边据:margin    上右下左

边框属性 (Border)
border-style: dotted;(点线) dashed;(虚线) solid(实线);

border-width:; 边框宽度

border-color:#;

简写方法borderwidth  style  color;

列表属性 (List-style)

类型list-style   用值none格式化li

定位属性: (Position)

Position: absolute; relative;

overflow 用其hidden属性与 height:数值  能够防止溢出;用其hidden属性与height:auto

zoom:1(兼容IE6必需要用这个属性)设置自适应高度

2.6  图片规范

图片的命名规范  

名称分为头尾两两部分,用下划线隔开。  

头部分表示此图片的大类性质。例如: 放置在页面顶部的广告、装饰图案等长方形的图片咱们取名:banner ;标志性的图片咱们取名为:logo ;在页面上位置不固定而且带有连接的小图片咱们取名为button ;在页面上某一个位置连续出现,性质相同的连接栏目的图片咱们取名:menu ;装饰用的照片咱们取名:pic ;不带连接表示标题的图片咱们取名:title 依照此原则类推。

尾部分用来表示图片的具体含义,用英文字母表示。例如:banner_sohu.gif

onmousehover效果的图片,两张分别在原有文件名后加"_on""_off"命名。如:

banner_sohu_on.gif

图片质量:

图片质量与图片格式有很大的关系,尽可能用gif图,而且在制做效果图时就应少用阴影、半透明效果图,这样能够减小图片数量。PNG图片尽可能不要用,IE6下对PNG的支持很是很差,兼容性调整的时候又要分背景PNG和插入图片PNG,很麻烦。

                 图片尺寸:

不一样页面,相同栏目的图片尺寸应按相同比例设计,尺寸不一样,比例相同的同一张图片在浏览器里不会变形和失真太严重。

                 插入图片:

插入图片在XHTML表现为:

<img src="images/12090.gif" width="120" height="90" alt=”人物头像” />

宽度、高度和alt属性必须给出。

当插入图片有超级连接时,会默认有蓝色边框,因此咱们在页面最开始就应该格式化图片

img{border:0;}

这样就不会有蓝色边框了。

                 图片背景:

背景图片在CSS表现为:

background:url(../images/dot.gif) left center no-repeat;

2.7  注释规范

XHTML注释:

在实际工做中,有时会出现分不清注释应该在标签之上仍是标签之下,为了不这种状况,注释信息统一写在区域标签开始以前和结束以后,并以“S”或“E”开始,表示区域注释的开始或结束。例:

<!-- =注释内容 start -->

<div>

...

</div>

<!-- =注释内容 end -->

在模块制做中,可能会出现区域中还有区域的状况,为了更好的区分区域之间的层级,引入了注释层级的概念。区域注释前面的等号表示了当前注释的层级例:

<!-- =注释内容 start -->

...

  <!-- ==注释内容 start -->

  ...

    <!-- ===注释内容 start -->

    ...

    <!-- ===注释内容 end -->

  ...

  <!-- ==注释内容 end -->

...

<!-- =注释内容 end -->

提示:不建议XHTML里写注释,两个浮动的标签之间添加注释的时候,可能会引发IE6字符复制掉行的BUG,很难处理,只有二者间的删除注释。若是不添加注释,页面标签的排列必须层次清楚,排列对称。再辅助火狐插件FireBug的使用,就能清晰明了的查看网页的布局和层次结构,彻底能够不添加注释。

CSS注释:

在实际工做中,有时会出现分不清注释应该在标签之上仍是标签之下,为了不这种状况,注释信息统一写在区域标签开始以前和结束以后,并以“S”或“E”开始,表示区域注释的开始或结束。例:

/* =注释内容 start */

.class{

...

}

.class{

...

}

/* =注释内容 end */

在模块制做中,可能会出现区域中还有区域的状况,为了更好的区分区域之间的层级,引入了注释层级的概念。区域注释前面的等号表示了当前注释的层级例:

/* =注释内容 start */

...

/* ==注释内容 start */

...

/* ===注释内容 start */

...

/* ===注释内容 end  */

...

/* ==注释内容 end */

...

/* =注释内容 end */

不论是CSS注释,仍是XHTML最好都用英文。CSS中文注释可能产生CSS失效的BUG

2.8  浏览器兼容

当下经常使用浏览器有:IE6IE7IE8IE9、火狐、谷歌、Safari苹果这几种。

其中兼容性问题最大的是IE6,其次是IE7。火狐、谷歌、苹果的兼容性已经很是的好,更多

的是考虑IE6IE7

IE6IE7Firefox之间的兼容写法:

 

 

IE6 IE7特有hack

写法一:

IE6能识别_IE7能识别*

根据上述表达,同一类/ID下的CSS hack可写为:

.searchInput {

 /* 正常属性 */

* /* IE7 */

_ /* IE6 */

}

通常三者的书写顺序为:正常属性、IE7IE6.

写法二:

*+html *html IE特有的标签, Firefox 暂不支持。

.searchInput {}

*html .searchInput {background-color:#666;}/*IE6*/

*+html .searchInput {}/*IE7*/

 

IE6常见bug解决:

双外边距: 某个类有属性 margin-left10px的时候,IE6下会可能会解析成20px的边距。

这个时候,就要给这个类加属性  _displayinline

 

PNG透明:JS解决

 

标签高度自适应:height:auto; overflow:hidden; zoom:1;

 

鼠标滑动事件:JS解决

 

更多IE6 BUG及解决方案

http://www.css88.com/archives/579

相关文章
相关标签/搜索