2011-06-09 27 views
5

我遇到了CSS問題。我的DIV根據何時從Web服務器運行我的Web應用程序與本地VS2010開發服務器的不同進行佈局。當我從web服務器運行應用程序而不是本地dev服務器時,DIV佈局不同

當我在本地運行時,我的三個DIV(preButtons,navContainer,postButtons)都內聯顯示,但是當我從IIS 7.5 Web服務器發佈並運行時,每個div後都有一個換行符。

任何想法我失蹤?

下面是HTML:

<style type="text/css">  
    div#pager div 
    { 
     display: inline-block; 
    } 

    #navContainer 
    { 
     width: 340px; 
     height: 28px;     
     overflow: hidden; 
     position: relative;  
    } 

    #reel 
    { 
     position: absolute; 
     top: 0; 
     left: 0;  
     width: 0; 
    } 

</style> 
<div id="pager" class="buttons"> 
    <div id="preButtons"></div> 
    <div id="navContainer"> 
     <div id="reel"> 
     </div> 
    </div> 
    <div id="postButtons"></div> 
</div> 

UPDATE:

這裏是行動問題的屏幕截圖。藍色邊框是因爲我在IE開發人員工具中選擇了「pager」div。 enter image description here

UPDATE:

在這一天我的問題是雙重的結束。

我的HTML & CSS需要根據指示進行清理,但我的網站也以兼容模式打開。這是因爲在工具 - >兼容性視圖設置下,選項「在兼容性視圖中顯示Intranet站點」被選中爲正值。當我的公司將IE8部署到我們的桌面時,我認爲這是自動設置的。

感謝大家的幫忙!

+0

ist HTML/CSS完全相同(做一個DIFF)? – konsolenfreddy 2011-06-09 19:44:39

+1

這種事情通常不會發生。它必須爲您提供該頁面的緩存版本。 – 2011-06-09 19:47:11

+0

也許你應該嘗試使用.css文件,而不是使內聯樣式?還請檢查您正在查看的頁面的來源有不需要的更改,以確保代碼完全相同 – 2011-06-09 19:48:58

回答

3

您可以在這裏大大簡化您的代碼。把你的三個div放在一個容器裏。將剩下的三個浮起來。之後清除浮子。沒有更多的絕對定位要求。木已成舟。

例如: HTML:

<div class="container"> 
     <div class="floatleft"></div> 
     <div class="floatleft"></div> 
     <div class="floatleft"></div> 
     <div class="clear"></div> 
</div> 

CSS:

.floatleft { 
    float: left; 
} 

.clear { 
    clear:both; 
} 

順便說一句,這取決於你分頁它可能是更容易做一個JavaScript網格如DataTables這將否定這一切的需要。

+0

這似乎解決了它!謝謝!問題:我只是對我的#reel div進行絕對定位(因爲它比navContainer更寬,並且可以滾動)。你知道爲什麼它在不同的設置上顯示不同嗎? – 2011-06-09 20:06:47

+0

很酷,感謝您的鏈接!因爲我不知道有什麼更好的,所以我在滾動我自己。 – 2011-06-09 20:07:51

+0

我無法想象用這種技術鋪設某些頁面。 +1 – BentOnCoding 2011-06-09 20:17:40

0

在css的開始處使用css重置,例如this one

+0

不幸的是,這是一個局部視圖控件,並作爲我應用程序中其他頁面的一部分嵌入。清除CSS遺失了我的頁面的其餘部分。儘管它有一個旋轉,然後divs仍然有一個換行符。 – 2011-06-09 20:02:07

相關問題