divcss 代码规范.doc_第1页
divcss 代码规范.doc_第2页
divcss 代码规范.doc_第3页
divcss 代码规范.doc_第4页
divcss 代码规范.doc_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

div+css命名规则页头:header登录条:loginBar标志:logo侧栏:sideBar广告:banner导航:nav子导航:subNav菜单:menu子菜单:subMenu搜索:search滚动:scroll页面主体:main内容:content标签页:tab文章列表:list提示信息:msg小技巧:tips栏目标题:title加入:joinus指南:guild服务:service热点:hot新闻:news下载:download注册:regsiter状态:status按钮:btn投票:vote合作伙伴:partner友情链接:friendLink页脚:footer版权:copyRight1.CSS ID 的命名外套:wrap主导航:mainNav子导航:subnav页脚:footer整个页面:content页眉:header页脚:footer商标:label标题:title主导航:mainNav(globalNav)顶导航:topnav边导航:sidebar左导航:leftsideBar右导航:rightsideBar旗志:logo标语:banner菜单内容1: menu1Content菜单容量:menuContainer子菜单:submenu边导航图标:sidebarIcon注释:note面包屑:breadCrumb(即页面所处位置导航提示)容器:container内容:content搜索:search登陆:login功能区:shop(如购物车,收银台)当前的current2.另外在编辑样式表时可用的注释可这样写:内容区3.样式文件命名主要的 master.css布局,版面 layout.css专栏 columns.css文字 font.css打印样式 print.css主题 themes.css来源: I?简单.快乐. 一文件命名规范全局样式:global.css;框架布局:layout.css;字体样式:font.css;链接样式:link.css;打印样式:print.css;二常用类/ID命名规范页眉:header内容:content容器:container页脚:footer版权:copyright导航:menu主导航:mainMenu子导航:subMenu标志:logo标语:banner标题:title侧边栏:sidebar图标:Icon注释:note搜索:search按钮:btn登录:login链接:link信息框:manage常用类的命名应尽量以常见英文单词为准,做到通俗易懂,并在适当的地方加以注释。对于二级类/ID命名,则采用组合书写的模式,后一个单词的首字母应大写:诸如“搜索框”则应命名为“searchInput”、“搜索图标”命名这“searchIcon”、“搜索按钮”命名为“searchBtnCSS书写规范及方法一.常规书写规范及方法1.选择DOCTYPE:XHTML1.0提供了三种DTD声明可供选择:过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。完整代码如下:严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性,例如。完整代码如下:框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。完整代码如下:理想情况当然是严格的DTD,但对于我们大多数刚接触web标准的设计师来说,过渡的DTD(XHTML1.0Transitional)是目前理想选择(包括本站,使用的也是过渡型DTD)。因为这种DTD还允许我们使用表现层的标识、元素和属性,也比较容易通过W3C的代码校验。关于DTD您可以参考:/search.asp?SearchContent=文档类型&searchType=title2.指定语言及字符集:为文档指定语言:为了被浏览器正确解释和通过W3C代码校验,所有的XHTML文档都必须声明它们所使用的编码语言;如:常用的语言定义:标准的XML文档语言定义:针对老版本的浏览器的语言定义:为提高字符集,建议采用“utf-8”。3.调用样式表:外部样式表调用:页面内嵌法:就是将样式表直接写在页面代码的head区。如:外部调用法:将样式表写在一个独立的.css文件中,然后在页面head区用类似以下代码调用。在符合web标准的设计中,推荐使用外部调用法,可以不修改页面只修改.css文件而改变页面的样式。如果所有页面都调用同一个样式表文件,那么改一个样式表文件,可以改变所有文件的样式。4、选用恰当的元素:根据文档的结构来选择HTML元素,而不是根据HTML元素的样式来选择。例如,使用P元素来包含文字段落,而不是为了换行。如果在创建文档时找不到适当的元素,则可以考虑使用通用的div或者是span;避免过渡使用div和span。少量、适当的使用div和span元素可以使文档的结构更加清晰合理并且易于使用样式;尽可能少地使用标签和结构嵌套,这样不但可以使文档结构清晰,同时也可以保持文件的小巧,在提高用户下载速度的同时,也易于浏览器对文档的解释及呈视;5、派生选择器:可以使用派生选择器给一个元素里的子元素定义样式,在简化命名的同时也使结构更加的清晰化,如:.mainMenuullibackground:url(images/bg.gif;)6、辅助图片用背影图处理:这里的”辅助图片”是指那些不是作为页面要表达的内容的一部分,而仅仅用于修饰、间隔、提醒的图片。将其做背影图处理,可以在不改动页面的情况下通过CSS样式来进行改动,如:#logobackground:url(images/logo.jpg)#FEFEFEno-repeatrightbottom;7、结构与样式分离:在页面里只写入文档的结构,而将样式写于css文件中,通过外部调用CSS样式表来实现结构与样式的分离。8、文档的结构化书写:页面CSS文档都应采用结构化的书写方式,逻辑清晰易于阅读。如:首页介绍服务/*=主导航=*/#mainMenuwidth:100;height:30px;background:url(images/mainMenu_bg.jpg)repeat-x;#mainMenuullifloat:left;line-height:30px;margin-right:1px;cursor:pointer;/*=主导航结束=*/9、鼠标手势:在XHTML标准中,hand只被IE识别,当需要将鼠标手势转换为“手形”时,则将“hand”换为“pointer”,即“cursor:pointer;”二注释书写规范1、行间注释:直接写于属性值后面,如:.searchborder:1pxsolid#fff;/*定义搜索输入框边框*/background:url(./images/icon.gif)no-report#333;/*定义搜索框的背景*/2、整段注释:分别在开始及结束地方加入注释,如:/*=搜索条=*/.searchborder:1pxsolid#fff;background:url(./images/icon.gif)no-repeat#333;/*=搜索条结束=*/关于注释,您可以参考:/search.asp?SearchContent=注释&searchType=title三样式属性代码缩写1、不同类有相同属性及属性值的缩写:对于两个不同的类,但是其中有部分相同甚至是全部相同的属性及属性值时,应对其加以合并缩写,特别是当有多个不同的类而有相同的属性及属性值时,合并缩写可以减少代码量并易于控制。如:#mainMenubackground:url(./images/bg.gif);border:1pxsolid#333;width:100;height:30px;overflow:hidden;#subMenubackground:url(./images/bg.gif);border:1pxsolid#333;width:100;height:20px;overflow:hidden;两个不同类的属性值有重复之处,刚可以缩写为:#mainMenu,#subMenubackground:url(./images/bg.gif);border:1pxsolid#333;width:100;overflow:hidden;#mainMenuheight:30px;#subMenuheight:20px;2、同一属性的缩写:同一属性根据它的属性值也可以进行简写,如:.searchbackground-color:#333;background-image:url(./images/icon.gif);background-repeat:no-repeat;background-position:5050;.searchbackground:#333url(./images/icon.gif)no-repeat5050;3、内外侧边框的缩写:在CSS中关于内外侧边框的距离是按照上、右、下、左的顺序来排列的,当这四个属性值不同时也可直接缩写,如:.btnmargin-top:10px;margin-right:8px;margin-bottom:12px;margin-left:5px;padding-top:10px;padding-right:8px;padding-bottom:12px;padding-left:8px;则可缩写为:.btnMargin:10px8px12px5px;Padding:10px8px12px5px;而如果当上边与下边、左边与右边的边框属性值相同时,则属性值可以直接缩写为两个,如:.btnmargin-top:10px;margin-right:5px;margin-bottom:10px;margin-left:5px;缩写为:.btnmargin:10px5px;而当上下左右四个边框的属性值都相同时,则可以直接缩写成一个,如:.btnmargin-top:10px;margin-right:10px;margin-bottom:10px;margin-left:10px;缩写为:.btnmargin:10px;4、颜色值的缩写:当RGB三个颜色值数值相同时,可缩写颜色值代码。如:.menucolor:#ff3333;可缩写为:.menucolor:#f33;关于缩写您可以参考:/search.asp?SearchContent=缩写&searchType=title四hack书写规范因为不同浏览器对W3C标准的支持不一样,各个浏览器对于页面的解释呈视也不尽相同,比如IE在很多情况下就与FF存在3px的差距,对于这些差异性,就需要利用css的hack来进行调整,当然在没有必要的情况下,最好不要写hack来进行调整,避免因为hack而导致页面出现问题。1、IE6、IE7、Firefox之间的兼容写法:写法一:IE都能识别*;标准浏览器(如FF)不能识别*;IE6能识别*,但不能识别!important,IE7能识别*,也能识别!important;FF不能识别*,但能识别!important;根据上述表达,同一类/ID下的CSShack可写为:.searchInputbackground-color:#333;/*三者皆可*/*background-color:#666!important;/*仅IE7*/*background-color:#999;/*仅IE6及IE6以下*/一般三者的书写顺序为:FF、IE7、IE6.写法二:IE6可识别“_”,而IE7及FF皆不能识别,所以当只针对IE6与IE7及FF之间的区别时,可这样书写:.searchInputbackground-color:#333;/*通用*/_background-color:#666;/*仅IE6可识别*/写法三:* html与*html是IE特有的标签,Firefox暂不支持。.searchInputbackground-color:#333;*html.searchInputbackground-color:#666;/*仅IE6*/* html.searchInputbackground-color:#555;/*仅IE7*/屏蔽IE浏览器:select是选择符,根据情况更换。第二句是MAC上safari浏览器独有的。*:lang(zh)selectfont:12px!important;/*FF的专用*/select:emptyfont:12px!important;/*safari可见*/IE6可识别:这里主要是通过CSS注释分开一个属性与值,注释在冒号前。selectdisplay/*IE6不识别*/:none;IE的if条件hack写法:所有的IE可识别:OnlyIE只有IE5.0可以识别:OnlyIE5.0IE5.0包换IE5.5都可以识别:OnlyIE5.0 仅IE6可识别:OnlyIE6-IE6以及IE6以下的IE5.x都可识别:OnlyIE6/ 仅IE7可识别:OnlyIE7/-关于CSSHACK和BUG您可以参考:/search.asp?SearchContent=HACK&searchType=title/search.asp?SearchContent=BUG&searchType=title2、清除浮动:在Firefox中,当子级都为浮动时,那么父级的高度就无法完全的包住整个子级,那么这时用这个清除浮动的HACK来对父级做一次定义,那么就可以解决这个问题。select:aftercontent:”.”;display:block;height:0;clear:both;visibility:hidden; 介绍Web规范中的Div+CSS标准的优点: 1.大大缩减页面代码,提高页面浏览速度,缩减带宽成本; 2.结构清晰,容易被搜索引擎搜索到,天生优化了seo 3.缩短改版时间。只要简单的修改几个CSS文件就可以重新设计一个有成百上千页面的站点。 4.强大的字体控制和排版能力。CSS控制字体的能力比糟糕的FONT标签好多了,有了CSS,我们不再需要用FONT标签或者透明的1 px GIF图片来控制标题,改变字体颜色,字体样式等等。 5.CSS非常容易编写。你可以象写html代码一样轻松地编写CSS。 6.提高易用性。使用CSS可以结构化HTML,例如:标签只用来控制段落,heading标签只用来控制标题,table标签只用来表现格式化的数据等等。你可以增加更多的用户而不需要建立独立的版本。 7.可以一次设计,随处发布。你的设计不仅仅用于web浏览器,也可以发布在其他设备上,比如PowerPoint。 8.更好的控制页面布局。不用多说。 9.表现和内容相分离。将设计部分剥离出来放在一个独立样式文件中,你可以减少未来网页无效的可能。 10.更方便搜索引擎的搜索。用只包含结构化内容的HTML代替嵌套的标签,搜索引擎将更有效地搜索到你的内容,并可能给你一个较高的评价(ranking)。 11.Table 布局灵活性不大,你只能遵循 table tr td 的格式。而div 你可以 div ul li 也可以 ol li 还可以 ul li 但标准语法最好有序的写。 12.另外如果你不是javascrput的高手,你可以不必去写ID,只用class就可以。当客户端程序员写完程序,需要调整时候,你可以在利用他的ID进行控制。 13.Table 中布局中,垃圾代码会很多,一些修饰的样式及布局的代码混合一起,很不利于直观。而Div 更能体现样式和结构相分离,结构的重构性强。 14.在几乎所有的浏览器上都可以使用。 15.以前一些非得通过图片转换实现的功能,现在只要用CSS就可以轻松实现,从而更快地下载页面。 16.使页面的字体变得更漂亮,更容易编排,使页面真正赏心悦目。 17.你可以轻松地控制页面的布局 。 18.你可以将许多网页的风格格式同时更新,不用再一页一页地更新了。你可以将站点上所有的网页风格都使用一个CSS文件进行控制,只要修改这个CSS文件中相应的行,那么整个站点的所有页面都会随之发生变动。 第2章 目标 l 将文档定义换成后保存,能在浏览器中打开无错误。 l 程序员不需关心或了解任何有关界面的表现实现。 l 站点与浏览器无关,或能适应常用浏览器。 l 站点换肤改动量最小(即只需修改配置文件)。 l 站点风格布局随意更换。 第3章 实现前提 程序员 l 程序员不要在页面上加入任何有关页面表现的元素。如页面比较特殊,请在页面的中,用用注释的标记表示此页面特殊,不需界面人员修改。 l 程序员在做页面期间使用到ajax等与页面有关技术时,同样在注释标记出ajax等的使用范围,从第几行到几行是ajax实现的。 l 在界面人员修改页面的时候,如果程序员要修改程序,务必先将工程内的页面替换为界面人员修改后的,防止界面人员多劳动。 界面人员 l 界面人员要加强学习,做一行精一行。如js、javascript等角本技术、css样式布局与重用、xhmlt规范与实现步骤、html页面的缓存技术、样式文件与角本文件的编写规范、文件传输效率等。 l 界面人员要为每个页面中的html标记加class或id等属性,样式文件要精简、每个类要有其存在的必要性,不要陷入class的样式地狱中。 l 界面人员要了解常用浏览器有哪些区别,包括角本区别与样式解析区别。 l 界面人员要了解有关ajax等与界面关系非常大的技术以及实现原理。 * 程序员与界面人员之间要加强的交流,加强学习。 第4章 具体实现步骤 4.1 页面规则 以下用词如有不了解,请参考第5章释义 4.1.1 文档头定义规则 每个页面必须第一行要有xhtml的文档头定义(必须在第一行), 。 本规则无论是页面第一次打开还是执行过一些具体操作都要遵守。 4.1.2 布局容器的使用规则 页面布局使用div,数据表的显示使用table标记,文本的显示label标记,菜单项或多链接(链接比较多)的使用等。 4.1.3 id使用规则 在每个页面中id是惟一的,一个页面只能存在惟一的一个id。尽量少用或不用id选择符。 4.1.4 class使用规则 l class由界面人员负责创建并命名。 l 尽量少用或不用class选择符(类选择符)。 l 通过“选择符”无法精确定位到html标记的使用class。 l 使用常用的input button等。 l 页面中特殊表现形式的。 4.1.5 页面有效规则 程序员交给界面人员的页面必须是有效的,能通过链接的方式或入口打开。 4.1.6 特殊页面规则 页面按照要求要特殊处理的,先在页面上加标记,然后由程序员自己完成或与界面人员交流讨论,由界面人员完成。 4.2 目录规则 由负责界面实现的人员在系统的Themes下存放css、js、images等内容。 4.3 注意事项 4.3.1 要尊重劳动成果,不要随意替换或删除页面。 4.3.2 加强交流 4.3.3 加强学习与运用 第5章 释义 5.1 选择符 任何HTML元素都可以是一个CSS1的选择符。选择符仅仅是指向特别样式的元素。例如, P text-indent: 3em 当中的选择符是P。 div border: 3px solid #000; 当中的选择符是div。 5.1.1 类选择符 单一个选择符能有不同的CLASS(类),因而允许同一元素有不同样式。例如,一个网页制作者也许希望视其语言而定,用不同的颜色显示代码 : code.html color: #191970 code.css color: #4b0082 以上的例子建立了两个类,css和html,供HTML的CODE元素使用。CLASS属性是用于在HTML中以指明元素的类,例如, 每个选择符只允许有一个类。 例如,prietary是无效的。 类的声明也可以无须相关的元素: .note font-size: small 在这个例子,名为note的类可以被用于任何元素。 一个良好的习惯是在命名类的时候,根据它们的功能而不是根据它们的外观。上述例子中的note类也可以命名为small,但如果网页制作者决定改变这个类的样式,使得它不再是小字体的话,那么这个名字就变得毫无意义了。 5.1.2 ID 选择符 ID 选择符个别地定义每个元素的成分。这种选择符应该尽量少用,因为他具有一定的局限。一个ID选择符的指定要有指示符#在名字前面。例如,ID选择符可以指定如下: #svp94O text-indent: 3em 这点可以参考HTML中的ID属性: 文本缩进3em 5.1.3 关联选择符 关联选择符只不过是一个用空格隔开的两个或更多的单一选择符组成的字符串。这些选择符可以指定一般属性,而且因为层叠顺序的规则,它们的优先权比单一的选择符大。例如,以下的上下文选择符 P EM background: yellow 是P EM。这个值表示段落中的强调文本会是黄色背景;而标题的强调文本则不受影响。 5.2 声明 5.2.1 属性 一个属性被指定到选择符是为了使用它的样式。属性的例子包括颜色、边界和字体。 5.2.2 值 声明的值是一个属性接受的指定。例如,属性颜色能接受值red。 5.2.3 组合 为了减少样式表的重复声明,组合的选择符声明是允许的。例如,文档中所有的标题可以通过组合给出相同的声明: H1, H2, H3, H4, H5, H6 color: red; font-family: sans-serif 5.2.4 继承 实际上,所有在选择符中嵌套的选择符都会继承外层选择符指定的属性值,除非另外更改。例如,一个BODY定义了的颜色值也会应用到段落的文本中。 有些情况是内部选择符不继承周围的选择符的值,但理论上这些都是特殊的。例如,上边界属性是不会继承的;直觉上,一个段落不会有同文档BODY一样的上边界值。 5.2.5 注解 样式表里面的注解使用C语言编程中一样的约定方法去指定。CSS1注解的例子如以下格式: /* COMMENTS CANNOT BE NESTED */ 5.3 伪类和伪元素 伪类和伪元素是特殊的类和元素,能自动地被支持CSS的浏览器所识别。伪类区别开不同种类的元素(例如,visited links(已访问的连接)和active links(可激活连接)描述了两个定位锚(anchors)的类型)。伪元素指元素的一部分,例如段落的第一个字母。 伪类或伪元素规则的形式如 选择符:伪类 属性: 值 或 选择符:伪元素 属性: 值 伪类和伪元素不应用HTML的CLASS属性来指定。一般的类可以与伪类和伪元素一起使用,如下: 选择符.类: 伪类 属性: 值 或 选择符.类: 伪元素 属性: 值 5.3.1 定位锚伪类 伪类可以指定A元素以不同的方式显示连接(links)、已访问连接(visited links)和可激活连接(active links)。定位锚元素可给出伪类link、visited或active。一个已访问连接可以定义为不同颜色的显示,甚至不同字体大小和风格。 一个有趣的效果是使当前(或“可激活”)连接以不同颜色、更大的字体显示。然后,当网页的已访问连接被重选时,又以不同颜色、更小字体显示。这个样式表的示例如下: A:link color: red A:active color: blue; font-size: 125% A:visited color: green; font-size: 85% 5.3.2 首行伪元素 通常在报纸上的文章,例如Wall Street Journal中的,文本的首行都会以粗印体而且全部大写地展示。CSS1包括了这个功能,将其作为一个伪元素。首行伪元素可以用于任何块级元素(例如P、H1等等)。以下是一个首行伪元素的例子: P:first-line font-variant: small-caps; font-weight: bold 5.3.3 首个字母伪元素 首个字母伪元素用于加大(drop caps)和其他效果。含有已指定值选择符的文本的首个字母会按照指定的值展示。一个首个字母伪元素可以用于任何块级元素。例如: P:first-letter font-size: 300%; float: left 会比普通字体加大三倍。 5.4 层叠顺序 当使用了多个样式表,样式表需要争夺特定选择符的控制权。在这些情况下,总会有样式表的规则能获得控制权。以下的特性将决定互相对立的样式表的结果。 1. ! important 规则可以用指定的! important 特指为重要的。一个特指为重要的样式会凌驾于与之对立的其它相同权重的样式。同样地,当网页制作者和读者都指定了重要规则时,网页制作者的规则会超越读者的。以下是! important 声明的例子: BODY background: url(bar.gif) white; background-repeat: repeat-x ! important 2. Origin of Rules (Authors vs. Readers) 正如以前所提及的,网页制作者和读者都有能力去指定样式表。当两者的规则发生冲突,网页制作者的规则会凌驾于读者的其它相同权重的规则。而网页制作者和读者的样式表都超越浏览器的内置样式表。 网页制作者应该小心地使用! important 规则,因为它们会超越用户任何的! important 规则。例如,一个用户由于视觉关系,会要求大字体或指定的颜色,而且这样的用户会有可能声明确定的样式规则为! important,因为这些样式对于用户阅读网页是极为重要的。任何的! important 规则会超越一般的规则,所以建议网页制作者使用一般的规则以确保有特殊样式需要的用户能阅读网页。 3. 选择符规则: 计算特性 基于它们的特性级别,样式表也可以超越与之冲突的样式表,一个较高特性的样式永远都凌驾于一个较低特性的样式。这只不过是计算选择符的指定个数的一个统计游戏。 a. 统计选择符中的ID属性个数。 b. 统计选择符中的CLASS属性个数。 c. 统计选择符中的HTML标记名格式。 最后,按正确的顺序写出三个数字,不要加空格或逗号,得到一个三位数。( 注意,你需要将数字转换成一个以三个数字结尾的更大的数。)相应于选择符的最终数字列表可以很容易确定较高数字特性凌驾于较低数字的。以下是一个按特性分类的选择符的列表: #id1 xxx /* a=1 b=0 c=0 - 特性 = 100 */ UL UL LI.red xxx /* a=0 b=1 c=3 - 特性 = 013 */ LI.red xxx /* a=0 b=1 c=1 - 特性 = 011 */ LI xxx /* a=0 b=0 c=1 - 特性 = 001 */ 4. 特性的顺序 为了方便使用,当两个规则具同样权重时,取后面的那个。 第6章 XHTML概念及规则简略总结 一、 XHTML概念 XHTML是 EXtensible HyperText Markup Language(可扩展超文本标记语言) 的英文缩写,并于2000年1月26日被国际标准组织机构W3C(World Wide web Consortium)定为一个标准的,认为是HTML的一个最新版本,并且将逐渐替换HTML。现在所有的浏览器都支持XHTML,XHTML兼容 HTML 4.0。 XHTML是HTML升级为XML的一种过度技术产品,被定为一个标准,XHTML完全兼容HTML4.01,并且具有XML的语法。 二、 XHTML与HTML的最大区别。 1. XHTML 元素一定要被正确的嵌套使用。 例:在HTML中,错误的嵌套text会被浏览器所兼容,而在XHTML中,必须正确嵌套text! 2. XHTML 文件一定要有正确的组织格式。 所有的XHTML应该正确的被嵌套在以开始以结束的元素里面,其他的元素可以有子元素,并且子元素也要被正确的嵌套在他们的父元素内。 例:text是正确的,而text是错误的,因为span是div的子元素,而不是相反。其他元素关系请参见XHTML语法。 3. 标签名字一定要用小写字母。 因为 XHTML文档是XML应用程序, XML 对大小写是敏感的。象 和 是两个不同的标记。 例:是错误的,必须改为。 4. 所有的 XHTML 元素一定要关闭。 XHTML要求有严谨的结构,所有标签必须关闭。不能有没有关闭的空的元素存在我们的代码中,有开始就应该有结束。独立的一个标签我们也要结束用 /来结束。 例:text是错误的,必须改为text。是错误的,必须改为。 5. 属性名字必须小写。 是错误的,必须改为 6. 属性的缩写被禁止。 XHTML规定所有属性都必须有一个值,没有值的就重复本身。 例:是错误的,必须改为 7. 所有的属性必须用双引号括起来。 是错误的,必须改为。 8. XHTML DTD定义文档的类型。 在XHTML中我们必须声明文档的类型,以便于浏览器知道你的文档是什么类型的,而且声明部分要加在文档的head之前。DOCTYPE声明是必不可少的关键组成部分,否则标识和CSS都不会生效。 . . 9. DTD声明类型。 过渡的(Transitional):要求非常宽松的DTD,它允许你继续使用HTML4.01的标识(但是要符合xhtml的写法)。 写法: 严格的(Strict):要求严格的DTD,你不能使用任何表现层的标识和属性。 写法: 框架的(Frameset):专门针对框架页面设计使用的DTD,如果你的页面中包含有框架,需要采用这种DTD。 写法: 第7章 针对IE6,IE7,Firefox的CSS 转 用CSS进行构建网页的时候,IE6跟Firefox之间的差异问题可以用 !important 来解决(这种方法尽量少用),但是IE7似乎还是不认识 !important ,而且它跟IE6之间也存在一些差异。浏览器的不一致性总是让人很头疼! 下面分别给出IE6IE7Firefox的hack代码: #example color: #333 !important; /* Firefox */ * html #example color: #666; /* IE6 */ *+html #example color: #999; /* IE7 */ 那么在Firefox下字体颜色显示为#333,IE6下字体颜色显示为#666,IE7下字体颜色显示为#999,他们之间互不干扰。 判断浏览器类型 注释中的东西只有小于版本7的IE采取执行,其他浏览器都忽略。 第8章 Css优先权 转 优先权问题其实就是一个冲突解决的问题,当同一个元素(或内容)被CSS选择符选中时,就要按照优先权取舍不同的CSS规则,这其中涉及到的问题其实很多。 首先就是CSS规则的specificity(特殊性),CSS2.1有一套关于specificity的计算方式,用一个四位的数字串(CSS2是三位)来表示,最终specificity越高的规则越特殊,在优先级判定时也就越有优势。关于specificity的具体计算在各种情况下的数字加成有如下一般规则: * 每个ID选择符(#someid),加 0,1,0,0。 * 每个class选择符(.someclass)、每个属性选择符(形如attr=”等)、每个伪类(形如:hover等)加0,0,1,0 * 每个元素或伪元素(:firstchild)等,加0,0,0,1 * 其他选择符包括全局选择符*,加0,0,0,0。相当于没加,不过这也是一种specificity,后面会解释。 按这些规则将数字串逐位相加,就得到最终计算得的specificity,然后在比较取舍时按照从左到右的顺序逐位比较。 举一些例子吧: h1 color: red; /*

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论