我已經搜索這個問題,這似乎是一個普遍的現象,但我還沒有找到解決方案,我的具體問題。只有Internet Explorer的DIV對齊問題
我的網頁在Firefox和Chrome以及Windows 8上的IE10上顯示得非常好。但是,任何其他IE版本都會將我的DIV全部搞亂。
網站:http://d2canton.pitmanstats.com
正確的佈局:谷歌廣告是下面的導航欄,並對齊,以白內容部分的左側,與表(隊列表)的廣告的權利。
在檢查了IE,Chrome和Firefox之間的元素並進行比較之後,看起來似乎是這個問題,但根據我的看法,源代碼看起來非常好:在Internet Explorer中, 「clearfix」和「main-fullwidth」DIV從同一點開始(如在每個DIV的頂部與另一個DIV相同),與「header」div的底部齊平。
但是,「main-fullwidth」DIV應該在「clearfix」DIV後面/後面開始。
我似乎無法理解爲什麼會發生這種情況。
下面是從index.php中相關代碼:
<body class="home blog custom-background">
<div id="container">
<?php include('includes/header.php'); ?>
<?php include('includes/outer_nav.php'); ?>
<div id="main-fullwidth">
<section style="display:block; overflow: hidden; border: 0px; padding:0px; ">
<aside style="display:block; float: left; width: 180px; ">
<?php include('includes/left_sidebar.php'); ?>
</aside>
<div style="margin-left:180px;">
<?php include('includes/inner_header.php'); ?>
<!-- CONTENT STARTS HERE -->
<!-- CONTENT ENDS HERE -->
</div>
</section>
</div><!-- #main-fullwidth -->
這裏是outer_nav.php(包含 「clearfix」):
<div class="clearfix">
<div class="menu-primary-container">
<ul id="menu-custom-primary-menu" class="menus menu-primary">
<li id="menu-item-241" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home menu-item-241"><a href="http://www.pitmanstats.com" >Home</a></li>
<li id="menu-item-236" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-236"><a href="http://www.pitmanstats.com/pages/" >My Pages</a>
<ul class="sub-menu">
<li id="menu-item-242" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-242"><a>DII Canton District</a></li>
<li id="menu-item-243" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-243"><a>DIII Wooster District</a></li>
<li id="menu-item-245" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-245"><a>Triway Basketball</a></li>
<li id="menu-item-244" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-244"><a>Quarter’s Corner</a></li>
</ul>
</li>
<li id="menu-item-441" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-441"><a href="http://www.pitmanstats.com/mobile/" >Mobile Apps</a></li>
<li id="menu-item-240" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-240"><a>About</a>
<ul class="sub-menu">
<li id="menu-item-237" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-237"><a href="http://www.pitmanstats.com/about/about-me/" >About Me</a></li>
<li id="menu-item-238" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-238"><a href="http://www.pitmanstats.com/about/history-of-pitmanstats-com/" >History of PITmanStats.com</a></li>
<li id="menu-item-239" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-239"><a href="http://www.pitmanstats.com/about/contact/" >Contact</a></li>
</ul>
</li>
</ul>
</div><!--.primary menu-->
<div id="topsearch">
<div id="search" title="Type and hit enter">
<form method="get" id="searchform" action="http://www.pitmanstats.com/">
<input type="text" value="Search" name="s" id="s" onblur="if (this.value == '') {this.value = 'Search';}" onfocus="if (this.value == 'Search') {this.value = '';}" />
</form>
</div><!-- #search -->
</div><!-- topsearch -->
</div><!-- clearfix -->
然後,所有 「left_sidebar.php」 是一個谷歌廣告。
同樣,在我看來,這是一個問題,「主全寬」不正確地啓動Internet Explorer中的「清除」後,而是在同一位置開始。這會導致廣告嘗試對齊左側,但它會立即在導航菜單的右側對齊。
如果您有任何問題或需要更多詳細信息,請讓我知道。這在過去有效,但最近停止了工作。謝謝!
謝謝你的評論。我已經做了修改,將ASIDE轉換爲DIV。我修改了index.php和inner_header.php中的代碼(都使用了ASIDE標籤)。不過,我仍然看到佈局問題。看起來,現在隊伍列表現在正確對齊,位於廣告右側,但廣告本身仍然過高,位於導航菜單旁邊,而不是下面。 「section」是一個有效的標籤嗎? – thePITman
'section'是html5中的有效標記,大多數舊式瀏覽器不支持它,儘管它們可以呈現任何標記。現在我只用'divs li的跨度表'來安全地玩,因爲你正在構建的東西可以與它們一起服務。 – andrewk
andrewk,謝謝你的幫助。這些提示有助於清理我的佈局。我已將決議提交給我的具體問題,作爲對此主題的單獨回覆。它處理了IE9及以下版本不支持的「after:」風格,所以我必須應用「明確:兩者;」使用內聯樣式到「主全寬度」DIV。 – thePITman