您的位置: 首页 > 技术文档 > 网页制作 > 标记语言——图片替换
IE7的web标准之道 Ⅲ 回到列表 Javascript——浅析注册事件
 标记语言——图片替换

作者:zergine 时间: 2008-08-19 文档类型:翻译 来自:蓝色理想

第 1 页 标记语言——图片替换 [1]
第 2 页 标记语言——图片替换 [2]
第 3 页 标记语言——图片替换 [3]
第 4 页 标记语言——图片替换 [4]
第 5 页 标记语言——图片替换 [5]
第 6 页 标记语言——图片替换 [6]
第 7 页 标记语言——图片替换 [7]
第 8 页 标记语言——图片替换 [8]

CSS内容:这是被施了魔法的地方

首先将设定所有导航项目共享的规则,如此就不必为每个标签重复相同的规则.接着为每个清单项目id分别加上独立规则,为<li>指定专属的background-image与width,每个标签只有这两个属性不一样.

CSS内容大致如下:

#nav {
  margin: 0;
  padding: 0;
  height: 20px;
  list-style: none;
  display: inline;
  overflow: hidden;
  }
#nav li {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline;
  }
#nav a {
  float: left;
  padding: 20px 0 0 0;
  overflow: hidden;
  height: 0px !important;
  height /**/:20px; /* for IE5/Win only */
  }
#nav a:hover {
  background-position: 0 -20px;
  }
#nav a:active, #nav a.selected {
  background-position: 0 -40px;
  }

前面这段CSS会把清单样式与内补丁去掉,把清单转成水平,同时隐藏超链接里的文字.留意:hover与:active规则.这在每个#nav内的<a>都通用,不必为每一个项目分别重复这些规则.

接着为我想持续突出显示标签指定"selected"类,提示读者目前在网站内的位置.这些规则与:active状态共用.

你或许也会注意到我们重复为#nav和#nav li指定了list-style:none;与display:inline;规则这是为了讨IE5 for Windows欢心,在完美的世界里,只要为#nav指定一次这些规则就够了,当然这不是现状.

接着,再为每个id加上规则,指定background-image和width,以下是一个实例:

#thome a {
  width: 40px;
  background: url(home.gif) top left no-repeat;
  }

当然,每个标签都有一段类似的声明.

成果

图14-13显示了标签在普通状态,鼠标滑过状态,选定状态下效果.如果你想看它实际运作的效果,可以看看SimleBits上面的示例于源代码(http://www.simplebits.com/bits/tab_rollovers.html).

图14-13 标签导航效果,示范三种不同状态.

为什么要用它?

  • 它非常轻量,标记源代码里不过是个无序清单.
  • 它易于使用: 利用Stuart的方法,我们确信屏幕阅读器能够念出文字链接.
  • 不用JavaScript:不要预先载入图片,或是为每个状态分别制作图片.也不需要额外的JavaScript控制鼠标滑过效果.谢拉!Pixy兄.
  • 它很美观:把文字放到指定的位置颇需技巧,这让我们可以直接使用漂亮的图片.

但是等等,文字不会变化大小!

遵照Douglas Bowman的好建议,同时回应易读性问题,无法调整图片大小问题,我更进一步制作了第二组文字放大的标签图片.然后我就能在现存的medium和large替换样式表里面覆盖这些规则.我用Paul Sowden的样式表切换器启用替换样式表,先前在第十章"技巧延伸"中提到过.

覆盖的样式规则与先前的代码几乎相同,只修改了图片位置,宽度:

#thome a {
  width: 46px;
  background: url(guides_lg.gif) top left no-repeat;
  }

图14-14显示了Fast Company网站上放大过后的标签效果,你能发现水平距离变窄了,而垂直大小与原始标签一样.但是,加上了放大文字,标签图片大小的功能之后,我们不仅帮助了视力不佳的使用者,同时仍然遵守现有的设计细节.

图14-14 用替换样式表放大图标图片的导航条

兼容性

这个方法经过测过,应该同时能在所有5.0版之后的浏览器上正常运作.

针对Fast Company的网站,我选择用position:absolute指定#nav的位置,以便完美对齐所有元素,让标题区域的背景色彩显示出来.这个方法效果十分完美,除了Opera7 for Windows以外,它需要为绝对定位元素指定宽度.

这没什么问题;只要为#nav指定所有图片的宽度总和就好了:

#nav {
  margin: 0;
  padding: 0;
  height: 20px;
  list-style: none;
  display: inline;
  overflow: hidden;
  width: 201px;
  }

这下我们能够睡个好觉了,Opera的拥护者也高兴了.

结论

现在你已经跟上图片替换技术的最新发展了,虽然还没有完美的解决方案,我仍希望你已准备好相关知识,这些原则十分重要,值得理解,实验一番.

除此之外,通过示范了两个真实的图片替换技巧使用法,我希望能使你开始前进,而你...对,就是你...会是那个发现下一个最佳做法的人,运气和名望正等着你!

经典论坛交流
http://bbs.blueidea.com/thread-2824504-1-1.html

下文:Chapter 15 为<body>指定样式

本文链接:http://www.blueidea.com/tech/web/2008/6115.asp 

出处:蓝色理想
责任编辑:bluehearts

上一页 标记语言——图片替换 [7] 下一页

◎进入论坛网页制作WEB标准化版块参加讨论,我还想发表评论

相关文章 更多相关链接
标记语言——为body指定样式
理解"渐进增强"
Css Reset(复位)整理
10条影响CSS渲染速度的写法与建议
CSS 浏览器的等宽空格
作者文章 更多作者文章
标记语言——为body指定样式
标记语言——为文字指定样式
标记语言——CSS布局
标记语言——打印样式
标记语言——应用CSS
关键字搜索 常规搜索 推荐文档
热门搜索:CSS Fireworks 设计比赛 网页制作 web标准 用户体验 UE photoshop Dreamweaver Studio8 Flash 手绘 CG
站点最新 站点最新列表
周大福“敬•自然”设计大赛开启
国际体验设计大会7月将在京举行
中国国防科技信息中心标志征集
云计算如何让安全问题可控
云计算是多数企业唯一拥抱互联网的机会
阿里行云
云手机年终巨献,送礼标配299起
阿里巴巴CTO王坚的"云和互联网观"
1499元买真八核 云OS双蛋大促
首届COCO桌面手机主题设计大赛
栏目最新 栏目最新列表
浅谈JavaScript编程语言的编码规范
如何在illustrator中绘制台历
Ps简单绘制一个可爱的铅笔图标
数据同步算法研究
用ps作简单的作品展示页面
CSS定位机制之一:普通流
25个最佳最闪亮的Eclipse开发项目
Illustrator中制作针线缝制文字效果
Photoshop制作印刷凹凸字体
VS2010中创建自定义SQL Rule
>> 分页 首页 前页 后页 尾页 页次:8/81个记录/页 转到 页 共8个记录

蓝色理想版权申明:除部分特别声明不要转载,或者授权我站独家播发的文章外,大家可以自由转载我站点的原创文章,但原作者和来自我站的链接必须保留(非我站原创的,按照原来自一节,自行链接)。文章版权归我站和作者共有。

转载要求:转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印,亦不能抹去我站点水印。

特别注意:本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有,文章若有侵犯作者版权,请与我们联系,我们将立即删除修改。

您的评论
用户名:  口令:
说明:输入正确的用户名和密码才能参与评论。如果您不是本站会员,你可以注册 为本站会员。
注意:文章中的链接、内容等需要修改的错误,请用报告错误,以利文档及时修改。
不评分 1 2 3 4 5
注意:请不要在评论中含与内容无关的广告链接,违者封ID
请您注意:
·不良评论请用报告管理员,以利管理员及时删除。
·尊重网上道德,遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而直接或间接导致的民事或刑事法律责任
·本站评论管理人员有权保留或删除其管辖评论中的任意内容
·您在本站发表的作品,本站有权在网站内转载或引用
·参与本评论即表明您已经阅读并接受上述条款
推荐文档 | 打印文档 | 评论文档 | 报告错误  
专业书推荐 更多内容
网站可用性测试及优化指南
《写给大家看的色彩书1》
《跟我去香港》
众妙之门—网站UI 设计之道
《Flex 4.0 RIA开发宝典》
《赢在设计》
犀利开发—jQuery内核详解与实践
作品集 更多内容

杂⑦杂⑧ Gold NORMANA V2