Safari / Windows *中的CSS *,可能与溢出有关

时间:2015-10-13 13:58:39

标签: html css safari css-float

http://www.chrissansom.net的整个网站中,仅在Safari / Windows中出现了基本的布局问题,甚至不包括Safari / Mac - 在两个平台上的Chrome,Firefox和Opera都很好以及IE(当前版本)。这可能是我做错的根本原因,但如果是这样的话,所有其他浏览器都非常宽容!

<body>内,在标题div下方,<div id="contentbox">根本没有样式属性。在其中,<div id="leftmenu">向左浮动,然后(在代码中)由<div id="rightmenu">向右浮动,然后依次为<div id="maincontent">,它出现在两个菜单之间。它的风格如下:

div#maincontent {
    margin-left: 200px; /* space for leftmenu */
    margin-right: 200px; /* space for rightmenu */
    padding: 20px;
    overflow: hidden;
/*  border: 1px solid green; */
}

(边界仅用于测试。)

在所有其他浏览器中,包括,我强调,Safari / Mac和Chrome /两者(它与Safari共享WebKit代码,没有?)它表现完美,但在Safari / Windows div中#maincontent获得额外的右边距大约400px。当我调整窗口大小时(直到整个窗口变得太窄),这个边距的大小保持不变。

我发现如果我删除了溢出属性,额外的边距就会消失,看起来是正确的,但这会干扰各个页面上的其他元素,这些元素会被推到左侧菜单的下方,所以我会这样做。我相当确定我需要它。

任何想法可能会在这里发生什么?我完全咆哮着错误的树吗?

1 个答案:

答案 0 :(得分:0)

在您的情况下,您可以轻松解决删除边距并将位置设置为相对的问题:

div#maincontent {
    position:relative;
    padding: 20px;
    overflow: hidden;
}