ad


CSS中文手册加入收藏设为首页共享模板提交创意简繁转换

您现在的位置: :首页 > CSS专题 > CSS进阶 > >> 正文

用!important解决IE和Mozilla的布局差别

『 更新时间:2008-04-28 04:24:06 』『 字体: 』『 编辑:归来 |  来源:模版CMS 』

在设计《网页设计师》页面的时候,有一个问题一直困扰着我,主菜单在IE和其他(Mozilla、Opera等)浏览器里显示的效果偏差2px。截图如下: IE中的效果 点此在新窗口浏览图片 Mozilla Firefox中的效果 点此在新窗口浏览图片 这是因为IE对盒之间距离的解释的bug造成的(参考onestab的" 浮动模型的问题 ")。我一直没有解决这个问题,直到我翻译 " 表格对决CSS--一场生死之战 "时,作者的一个技巧提示帮我找到了解决的方法:用!important。 !important是CSS1就定义的语法,作用是提高指定样式规则的应用优先权(参见:W3.org的解释)。语法格式{ sRule!important },即写在定义的最后面,例如:box{color:red !important;} 最重要的一点是:IE一直都不支持这个语法,而其他的浏览器都支持。因此我们就可以利用这一点来分别给IE和其他浏览器不同的样式定义,例如,我们定义这样一个样式:.colortest { border:20px solid #60A179 !important; border:20px solid #00F; padding: 30px; width : 300px; } 在Mozilla中浏览时候,能够理解!important的优先级,因此显示#60A179的颜色: 点此在新窗口浏览图片 在IE中浏览时候,不能够理解!important的优先级,因此显示#00F的颜色: 点此在新窗口浏览图片 可以看到,利用!important,我们可以针对IE和非IE浏览器设置不同的样式,只要在非IE浏览器样式的后面加上!important。因此,上面提到的我的主页2px的显示差别也轻松解决: PADDING-TOP: 11px !important;
PADDING-TOP: 9px; !important必定成为CSS布局的利器,请记住和掌握它吧:)

共有 位网友发表了评论 收藏该内容报告错误点击复制信息给好友分享查看所有网友评论关闭此页面
  • 您暂未登陆,请登陆后发表! 或直接填写昵称匿名发表
  • 1.请勿发表广告及不良言论.
  • 2.本文内容及版权归原作者.
  • 匿名?
关于我们 | 投稿指南 | 广告服务 | 建站服务 | 联系我们 | 网站地图 | 友情连接 | 诚征英才
欢迎您光临模板CMS,竭尽全力为您打造最专业的CMS资源站点!联系我26211803 联系我667559
建站交流群:1700154 模板交流群:37797574 49415971 10086677 交流论坛
Copyright © 2005-2007 www.mobancms.com online services. All rights reserved. Template designed by lacdy.
模板CMS版权所有 豫ICP备06002344号