【发布时间】:2014-01-24 12:26:10
【问题描述】:
嗯,我无法解决这个问题,似乎所有“有能力”的浏览器都可以处理这个问题(包括 IE8,甚至没有能力,哈哈)但 IE9 不能。我有以下 HTML:
<div class="contact_info_city" id="contact_info_cityX">
<h3>City name</h3>
<div>
<div>
<p class="office_tel"><span class="tel_text">Tel.:</span><span class="tel_no">+000 000 000 000</span></p>
<p class="office_email"><span class="email_text">Email:</span><span class="email_address">somelonglongemailaddressthatdoesntfit@site.com</span></p>
</div>
</div>
</div>
还有 CSS:
#contact_info_cityX {
width: 500px;
}
.contact_info_city h3 {
text-align: center;
font-size: 25px;
letter-spacing: 0;
height: 56px;
}
.contact_info_city > div > div {
display: inline-block;
}
.contact_info_city > div {
text-align: center;
margin-top: 35px;
}
.office_tel {
font-size: 20px;
}
.office_tel .tel_text {
color: #262626;
float: left;
}
.office_tel .tel_no {
float: right;
}
.office_email {
font-size: 16px;
clear: both;
}
.office_email .email_text {
color: red;
float: left;
}
.office_email .email_address {
color: red;
float: right;
}
基本上它所做的就是: 它放置了一个 h3 城市名称,并对齐(或应该)电话。和左侧的电子邮件文本,每个都在自己的行中,同时将实际的电话号码和电子邮件地址放在相应文本的右侧。如果电子邮件地址比电话号码长,则只需将它们向右对齐,并在“Tel.:”和电话号码之间留出更大的间距。 这是我希望看到的(除 IE9 之外的所有浏览器):
这是我在 IE9 中看到的(较小的图片,只是从浏览器堆栈中截取了一个屏幕):
我不明白电子邮件地址前的换行符。有谁知道如何解决这个问题?非常感谢!
【问题讨论】:
-
问题:为什么你需要在一个段落中有两个不同的跨度,如果你确定这是你需要保留的值?这不会有帮助吗? -> 电子邮件:somelonglongemailaddressthatdoesntfit@site.com
标签: html css internet-explorer css-float line-breaks