layout - IE7/IE8兼容渲染 float 布局错误

标签 layout css internet-explorer-7 css-float ie8-compatibility-mode

我有一个带有右侧边栏和左侧主要内容区域的网站。代码如下所示:

<div class="leftside">leftsidecontent</div>
<div class="leftside">leftsidecontent</div>
<div class="leftside">leftsidecontent</div>
<div class="leftside">leftsidecontent</div>
<div class="rightside">rightsidecontent</div>
<div class="rightside">rightsidecontent</div>
<div class="rightside">rightsidecontent</div>

.leftside
{
  float:left;
  width:710px;
}
.rightside
{
  margin-left:720px;
}

(查看实际站点 http://blog.stephenkiers.com/)

之所以这样编码,是因为左侧内容很重要,我想成为视障访问者访问的第一个数据;而不是他们每次都必须跳过所有的绒毛!

该代码适用于 FF、IE8、Safari 等;但在 IE7 中,右侧的 div 会清除 float 的 div。

我很乐意收到您的任何建议。我对如何修复它有一些想法;但它们都涉及相当大的重写。

谢谢!

最佳答案

你为什么不尝试像这样将内容包装成两列 example

CSS:

.leftside {
  float:left;
  width:710px;
}

.rightside {
  float: left;
  margin-left: 20px;
}

.contentBlock { margin-bottom: 10px; background: #ccc; padding: 8px; }

HTML:

<div class="leftside">
  <div class="contentBlock">
    <p>main stuff goes here</p>
  </div>
  <div class="contentBlock">
    <p>main stuff goes here</p>
  </div>
  <div class="contentBlock">
    <p>main stuff goes here</p>
  </div>
  <div class="contentBlock">
    <p>main stuff goes here</p>
  </div>
</div>
<div class="rightside">
  <div class="contentBlock">
    <p>secondary stuff goes here</p>
  </div>
  <div class="contentBlock">
    <p>secondary stuff goes here</p>
  </div>
  <div class="contentBlock">
    <p>secondary stuff goes here</p>
  </div>
  <div class="contentBlock">
    <p>secondary stuff goes here</p>
  </div>
</div>

这样左侧和右侧只是布局元素,与内容隔离。

另一个给视障访问者的好建议是在页面顶部有链接,允许用户直接跳到内容部分,并使用 css 从您的布局中隐藏它们:

.skipToLinks { position: absolute; top: -100px;}

关于layout - IE7/IE8兼容渲染 float 布局错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3711941/

相关文章:

javascript - jQuery 在 IE 上返回空输入值

html - IE7 问题 : How to expand parent div's height with dynamic content of the child div?

Wpf 面板布局 - 一个子项,多个位置

html - 即使有 margin : 0;,Div 仍然有 margin

WPF:为什么我不应该在 ControlTemplate 中使用 {TemplateBinding Margin} - Margin 是否仅适用于元素的容器?

html - CSS3 Modal Box 遮盖后的内容?

android - 在 ScrollView 中的 EditText 中启用滚动

html - 字符集标记代码行如何使我的整个页面重新加载两次?

html - 导航栏到中心

javascript - IE7 CSS 问题 : cannot get correct span width