【问题标题】:Formatting Wrong on IE 11 and EdgeIE 11 和 Edge 上的格式错误
【发布时间】:2016-06-09 17:44:04
【问题描述】:

我正在开发一个其他人从模板开始的网站,因此其中的所有内容都不是我的。我不是专业的网页设计师,但我确实有编码经验。一切都在 Firefox 和 chrome 中完美显示,在 Edge 中几乎完美,但在 IE11 中完全错误。

示例:https://imgur.com/a/r4cI0

火狐:

边缘:

Internet Explorer 11:

我似乎无法弄清楚为什么在使用 Internet Explorer 查看时背景颜色不显示某些方面。我似乎也无法弄清楚为什么文本没有正确浮动,所以它位于图片旁边。在 IE 11 中查看时,页眉和页脚也显示不正确。

这是包含应该在图片旁边的文本的 HTML:

<aside> 
<h3> Fliteway Technologies</h3>
<p>Your Single Source for Soil and Groundwater Remediation Equipment</p>
<h3><a href="Fliteway Tour.pdf">Take a Tour!</a></h3>
</aside>

这里是 CSS:

aside {
float: right;
width: 225px;
height: auto;
background-color: #E3E3E3 !important;
background-color: rgba(227, 227, 227, 1);
background:#E3E3E3;
margin-top: 0;
clear: left;
padding-top: 10px;
padding-bottom: 10px;
position: relative;
overflow: hidden;
margin-left: auto;
margin-right: 0;
margin-bottom: auto;
display: block;
visibility: inherit;

CSS 中有一些混乱,因为我一直在尝试我在网上遇到的任何东西来尝试解决问题。任何建议都将不胜感激,因为我真的坚持这一点。

图片HTML:

<sidepicture>
<div class="sidepicture"><img src="_images/Bld with Addition.jpg" alt="Shop" width="564" height="270"></div>
</sidepicture>

图片CSS:

.sidepicture {
display:inherit;
}

【问题讨论】:

  • 我们需要图片的html/css以及它的父元素,虽然你应该避免使用float来布局,...你需要支持哪些浏览器? ... 从 IE11 及更高版本开始?
  • 好的,我已经为图片添加了 HTML 和 CSS。我不太清楚你所说的父元素是什么意思,但我对此还是很陌生。你会建议我如何格式化呢?
  • @LGSon 要求的是 aside 元素的 css。如果没有这个,我能给你的唯一提示是使用 ms 样式变量,即当你在下面写 display:block 时也写 display:-ms-block
  • 我在答案中添加了一个父元素wrapper,其中父元素表示在这种情况下具有asidesidepicture 作为其子元素的元素。跨度>
  • 我认为您应该将容器 div 和垂直对齐顶部都包装起来。或者使用引导程序并做一个 md-6-6 网格

标签: html css internet-explorer formatting display


【解决方案1】:

对于较新的浏览器,我建议使用flex

.wrapper {
  display: flex;
}
aside {
  width: 225px;
  background:#E3E3E3;
}  

sidepicture {
}
<div class="wrapper">
  <sidepicture>
    <div class="sidepicture">
      <img src="_images/Bld with Addition.jpg" alt="Shop" width="564" height="270"></div>
  </sidepicture>
  <aside> 
    <h3> Fliteway Technologies</h3>
    <p>Your Single Source for Soil and Groundwater Remediation Equipment</p>
    <h3><a href="Fliteway Tour.pdf">Take a Tour!</a></h3>
  </aside>
</div>

对于旧版浏览器,我会使用 display: table

旁注:如果针对旧版浏览器,请注意它们可能不支持自定义标签,例如您的 &lt;sidepicture&gt;

.wrapper {
  display: table;
  width: 100%;
}
aside {
  display: table-cell;
  width: 225px;
  background:#E3E3E3;
  vertical-align: top;
}  

sidepicture {
  display: table-cell;
  vertical-align: top;
}
<div class="wrapper">
  <sidepicture>
    <div class="sidepicture">
      <img src="_images/Bld with Addition.jpg" alt="Shop" width="564" height="270"></div>
  </sidepicture>
  <aside> 
    <h3> Fliteway Technologies</h3>
    <p>Your Single Source for Soil and Groundwater Remediation Equipment</p>
    <h3><a href="Fliteway Tour.pdf">Take a Tour!</a></h3>
  </aside>
</div>

【讨论】:

  • 这解决了 Edge 中的显示问题,我对此非常感激,但是在 IE 11 中查看时没有明显的变化。
  • @Echo1 我在 Chrome、Firefox、Edge、IE11 中使用上述 sn-p 测试了 flex 版本,它们都呈现相同的结果。如果你自己的代码没有,我需要看看。
  • 这里是 HTML 和 CSS 文件。如果你还需要什么,我很乐意提供帮助。 dropbox.com/sh/yel9due2qis1v3k/AABNO-XTAgLjueL6nkbPQyGRa?dl=0
  • @Echo1 测试了你的代码,它在 IE11 中对我有用。确保不加载 IE 特定样式表,并有一些其他规则覆盖我给你的规则。如果你能给我一个在你的网络服务器上运行的页面的链接会更好
  • 目前该网站不在网络服务器上,我只是通过dreamweaver在浏览器中预览网页。仅 IE 样式表目前完全相同,但文本颜色不同,以查看它是否改变了任何东西(它没有)所以我最好删除仅 IE 样式表吗?
猜你喜欢
  • 1970-01-01
  • 2018-02-03
  • 2015-12-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-16
  • 2018-07-25
相关资源
最近更新 更多