转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 站长学院 >> 网页制作 >> 正文
样式表在web标准应用存在的问题         ★★★★

样式表在web标准应用存在的问题

作者:闵涛 文章来源:闵涛的学习笔记 点击数:660 更新时间:2009/4/23 13:46:43

  一.CSS校验的问题

  首先根据比赛要求,参赛作品必须符合XHTML标准,提交的CSS必须通过W3C的校验。CSS校验的情况比较理想,参赛作品中只有8份作品未通过CSS2.0校验,主要校验错误都是:“Line : 0 font-family: 建议你指定一个种类族科作为最后的选择”

  W3C建议字体定义的时候,最后以一个类别的字体结束,而不要以单独某个字体结束。例如"sans-serif"就,以保证在不同操作系统下,网页字体都能被显示。

  虽然多数人都在body标签上定义了"sans-serif",但在其它的id或class中再次定义字体时漏了sans-serif,被认为校验不通过。这个错误不是很严重,只要稍加注意就可以避免。

  二.CSS的书写建议

  1. 给CSS文件加注释。注释会为你今后的维护带来方便,建议尽可能给CSS文件加注释,不要担心增加少量的字节。
  2. 尽量简写CSS语法。比如颜色值"#FFFFFF"可以简写成"#FFF";"padding-top:30px;Padding-right:0;padding-bottom:10px;padding-left:2 0px"可以简写为"padding:30px 0 10px 20px;"。在定义技巧上有更多的节省技巧,随着对CSS应用的熟练,你会不断发现更好的办法。

三.XHTML校验的问题

因为是样式表比赛,大家对CSS的校验比较注意,但在XHTML符合标准方面有点忽视,出现很多低级错误。主要问题罗列如下:

  1. target="_blank",这个语法在HTML4.0里是正确的,在XHTML1.0里是不允许使用的。解决的办法之一是写成target="new",另外一个办法是用js处理所有的target;
  2. 样式表最好不要内嵌,将样式表文件独立出来易于维护。如果内嵌<style>一定要写成<style type="text/css">,其中的type不能忽略,否则XHTML无法判断你的style作用在什么方面。
  3. <br>必须写成<br />,XHTML要求所有的标签必须关闭,不成对的标签直接在后面加" /"。
  4. 重复使用同一ID。一个ID在XHTML中只能使用1次,如果需要多次引用样式,应该使用class。
  5. <meta http-equiv="Content-Type" content="text/html; charset="gb2312" />很明显content属性值里面多了一个引号。
  6. Flash的嵌入方法错误。<embed>最早是Netscape的私有标签,即使后来为IE所支持,但始终没有被W3C承认,在HTML4.0没有<embed>这个标签。W3C主张的是采用<object>标签。为了解决不同浏览器的兼容,有一个变通的解决方法是2个标签都采用。完整的示例代码如下(flash背景为透明): <object classid="clsid:27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/
    swflash.cab#version=5,0,0,0" width="300" height="100"> <param name="quality" value="high"> <param name="wmode" value="transparent"> <param name="SRC" value="test.swf"> <embed src="test.swf" wmode="transparent" quality="high" pluginspage="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="300" height="100"> </embed> </object>

    但直接写在XHTML中依然不可以,我们现在只能通过把上面代码写在flash.js文件里,然后再调用来骗过校验。

    <script type="text/javascript" src="flash.js"></script>

    关于flash是否符合标准,是一个存在争议的问题。更多说明:参考http://www.blueidea.com/tech/site/2004/1920.asp

    1. 类似id=header class=title代码都应该写成id="header" class="title"。给属性值加引号是最XHTML基本的语法规则。

    四.兼容的问题

    有12份作品在IE6.0、Mozilla Firefox1.0、Opera 7.12中浏览发生变形和错位。(我没有用IE5.0测试,偷懒啦:)IE5.0对所有CSS布局的设计师都是个挑战)。

    1. 在IE里居中,但Mozilla里没有。在IE中设置body {TEXT-ALIGN: center;}就已经可以居中了,但在Mozilla中必须对需要居中的层再加入以下样式设置:MARGIN-RIGHT: auto;MARGIN-LEFT: auto;
    2. 超出宽度。在Mozilla里看正常的页面,在IE里因为超出宽度而变形,并排的层移到下面去了。这个情况是因为IE和Mozilla对盒模型解释不同造成的,有很多解决办法,比如"!important"方法。

    总得来说,参赛作品整体上是合格的居多,这次大赛的目的也已经基本达到,web标准和CSS布局已经被越来越多的设计师了解和掌握。对于部分作品美工简陋,我想这是一个过程,资深设计师应该都记得Table布局刚出现的时候,网页大多也很朴素。CSS布局经过一段时间的消化理解和应用,会有更多象一等奖作品这样技术美观兼顾的网页涌现。



没有相关教程
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Web开发  · 网页制作
    · 平面设计  · 网站运营
    · 网站推广  · 搜索优化
    · 建站心得  · 站长故事
    · 互联动态
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台