2013-10-20 77 views
0

我試圖模仿這一形象:兩列布局,左邊一列「在」右列效果

enter image description here

original image page

有左列中的陰影效果到右列,通常我使用虛列方法,並將背景放在容器上,但對於這種情況,左列應位於右列。

編輯:我現在在此基礎上你的答案,但是,從側邊欄的背景在容器的高度不會停止(它溢出到頁面的底部)。

#map-app { 
    height: 100%; 
    min-height: 650px; 

    width: 1200px; 
    margin: 30px auto; 
    background-color: #FFFFFF; 

    .sidebar { 
     background-image: url('/data/images/map/v2/sidebar_separator.png'); 
     background-position: top right; 
     background-repeat: repeat-y; 

     position: absolute; 
     height: 100%; 
     width: 350px; 
     z-index: 9999; 
    } 

    .content-container { 
     position: absolute; 
     height: 100%; 
     width: 100%; 
     z-index: 9998; 
    } 
} 

它看起來像這樣: enter image description here


任何建議,我怎麼能做到這一點?

+0

你嘗試過這麼遠嗎?你有JSfiddle嗎?你有沒有想過使用'box-shadow'? –

+0

就像在問題中所述,我已經嘗試了2個浮動背景的容器,但這並不合適,因爲我需要背景/陰影在第二個浮動上。我想到了使用某種立場:絕對的魔法,但我認爲這是非常錯誤的做法。我還沒有JSFiddle,但我可以製作一個。我還沒有試過盒子陰影。謝謝您的幫助! – TomShreds

+0

評論sass和指南針讓人害怕。如果我正在設計的頁面或應用程序具有非常複雜的樣式,我更喜歡使用sass。 – PatchGuru

回答

1

如果你想確保左欄將直接右上方定位,顯然是使用z-index的元素,並提供左列與右邊框陰影效果。這將允許您完全用右欄填充頁面,用左欄填充一半,使用z-index將左欄的堆棧順序設置在右上方。如果您不顯示任何代碼,我將不會顯示任何代碼。有點毫無意義。

更新:你顯然需要使用的位置是:絕對的;對於兩列來說,爲了達到這個效果,你正在瞄準,如果你把它設置爲相對的瀏覽器不會讓它們重疊。

更新:如果你正在尋找兩列延伸到瀏覽器的高度,你會明顯地使用相同的容器用於和設置它的height: 100%;與具有容器的問題,左欄,右欄是,您可以將容器設置爲100%的高度,但這隻會讓您放入100%高度的內容,並不意味着內容的大小也完全是100%。我建議做是容器代碼更改爲height: 100%; width: 100%;和只設置一個<div class="container"></div>

代碼更新:

.container { 
    height: 100%; width: 100%; 
} 

.leftcolumn { // Guessing this would be your .sidebar 
    overflow: hidden; // Option 1: Set the overflow to hidden. 
    position: absolute; 
    height: 100%; width: 50%; // Option 2: Set the height slightly lower. like 99% 
    z-index: 9999; // Higher than right. 
} 

.rightcolumn { 
    position: absolute; 
    height: 100%; width: 100%; 
    z-index: 9998; // Lower than left. 
} 
+0

我沒有添加任何代碼的原因是我使用指南針/ sass,我不想讓人們想「哦,這是一個我不知道的指南針問題」並逃跑。這是一個簡單的CSS問題,你的答案似乎是我所期待的,所以謝謝:) – TomShreds

+0

使用位置:絕對,我將如何保持該div與其容器一樣高?身高適合瀏覽器的高度。哼,也許使用位置:相對於容器? – TomShreds

+0

它幾乎可以工作!我用我擁有的東西更新了這個問題,你能否檢查我做了正確的事情?非常感謝你的幫助! – TomShreds