2013-10-20 50 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