dl、dt、dd 标记来改造163邮箱的广告条

时间:2021-05-08

打开网易邮箱的登录界面,我们会发现,在首页的底部有这样一个“最新动态”的广告条,其设计代码如下:HTML代码<!DOCTYPE html 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><meta name="keywords" content="网易163邮箱--中文邮箱第一品牌" /><meta name="description" content="网易163邮箱--中文邮箱第一品牌" /><title>网易163免费邮--中文邮箱第一品牌</title><link rel="shortcut icon" href="http://mail.163.com/favicon.ico" /><meta http-equiv="Content-Type" content="text/html; charset=GB2312" /><link href="http://mimg.163.com/index/new/163_index_style12.css" rel="stylesheet" type="text/css" /></head><body><div id="NewsDiv"><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td id="NewsDiv-left"></td><td width="80" align="center" valign="middle" class="font2" ><a href="http://kefu.mail.163.com/?from=163sy2" target="_blank">最新动态</a></td><td id="NewsDiv-mid"></td><td class="NewsDiv-mid2"><a href="http://popogame.163.com/topic/match/index.html?from=163" target="_blank">100%有奖!白金情侣项链等你拿</a></td><td class="NewsDiv-mid2><a href="http://smsmail.163.com/newsmsmail/eaw_index.jsp" target="_blank">出门在外,紧急邮件处理不了怎么办?</a></td><td class="NewsDiv-mid2"><a href="http://www.188.com/" target="_blank">打造中国最好的收费邮箱</a</td><td id="NewsDiv-rig"><a href="http://kefu.mail.163.com/?from=163sy2" target="_blank" title="更多"><span class="arrow">>></span></a></td></tr></table></div></body></html>
[Ctrl A 全部选择 提示:你可先修改部分代码,再按运行]
在这里,网易采用了table来设计这个页面效果,当然<table>用在这里并没有什么不妥。但是今天,我们主要是想用一个非<table>方法来达到同样的效果。
首先看一下用到的背景图
这张图片中包含了所有该页面中用到的图片,在这个横条中只用到了底部了两个,我们可以看出,对于长度远小于实际内容的背景来说,使用<table>有很多便利性。
接下来我们看看怎么用非<table>标签来达到同样的效果:首先,从主义上来看“最新动态”是标题,其它后面几项都是“最新动态的详细内容”,存在主次关系。这个至少可以想到一点就是“最新动态”可能用到<hn>标签;其次,各内容之间的并列关系,对于处理并列关系我们常用的就是无序列表<ul>了;最后,结合上面的主次与并列,我们可以考虑用<dl><dt><dd>来实现这个效果了(关于这三个标签的具体含义和应用请参考“ 经常被遗忘的重要标签——<dl><dt><dd>”)。

  • *{padding:0;margin:0;font-size:12px;font-family:Tahoma"宋体"} dl{background:#E1F6FFurl(attachments/month_0712/g2007123002932.gif)no-repeat0px-259px;float:left;padding-left:5px;margin:100px0100px;}
  • dt{height:26px;line-height:26px;float:left;background:RGB(187,228,246);padding:05px;} dd{padding-left:20px;height:26px;line-height:26px;background:#E1F6FFurl(attachments/month_0712/g2007123002932.gif)no-repeat-230px-300px;display:inline;float:left}
  • .first{padding-left:16px;background:#E1F6FFurl(attachments/month_0712/g2007123002932.gif)no-repeat-8px-259px;} .last{padding-left:40px;padding-right:20px;background:#E1F6FF;background:url(attachments/month_0712/g2007123002932.gif)no-repeat-17px-259px;}
    * {padding:0;margin:0;font-size:12px;font-family:Tahoma "宋体"}
    dl {background:#E1F6FF url(attachments/month_0712/g2007123002932.gif) no-repeat 0px -259px;float:left;padding-left:5px; margin:100px 0 100px;}
    dt {height:26px;line-height:26px;float:left;background:RGB(187,228,246);padding:0 5px;}
    dd {padding-left:20px; height:26px;line-height:26px;background:#E1F6FF url(attachments/month_0712/g2007123002932.gif) no-repeat -230px -300px;display:inline;float:left}
    .first {padding-left:16px;background:#E1F6FF url(attachments/month_0712/g2007123002932.gif) no-repeat -8px -259px;}
    .last {padding-left:40px;padding-right:20px;background:#E1F6FF;background:url(attachments/month_0712/g2007123002932.gif) no-repeat -17px -259px;}
  • <dl>
  • <dt>最新动态</dt><ddclass="first"></dd>
  • <ddheight="26">100%有奖!白金情侣项链等你拿</dd><dd>出门在外,紧急邮件处理不了怎么办?</dd>
  • <dd>打造中国最好的收费邮箱</dd><ddclass="last"></dd>
  • </dl>
    <dl>
    <dt>最新动态</dt>
    <dd class="first"></dd>
    <dd height="26">100%有奖!白金情侣项链等你拿</dd>
    <dd>出门在外,紧急邮件处理不了怎么办?</dd>
    <dd>打造中国最好的收费邮箱</dd>
    <dd class="last"></dd>
    </dl>
    运行上面的效果,我们可以看到两者大体相似。
    当然,本例存在一个问题就是<dd class="first"></dd>和<dd class="last"></dd>是两个为了实现我们想要的效果而存在的,并无实在的语义,因此这也是本例的一个缺点。不过我相信,应该有更好的不使用<table>标签实现此类问题办法。

  • 声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章