2013-07-29 139 views
3

无论父级的父级的宽度如何,我想要使父级的子级浮动权利为。下面是一个例子:http://jsfiddle.net/eqDyy/。那小提琴只是它应该看起来像的一个例子。它是用给定的像素的确切数量完成的,但是我正在寻找的是一个解决方案,它仍然可以让内部div显示在其父级的右侧,即使父级宽度发生变化也是如此。使父子代的子级别浮动

以下是在小提琴使用的代码:

HTML

<div id="one"> 
    <div id="two"></div> 
</div> 

CSS

#one { 
    border:2px solid #ddd; 
    width:150px; 
    height:30px; 
} 
#two { 
    border:2px solid #ddd; 
    width:150px; 
    height:30px; 
    margin-left:150px; 
    margin-top:-2px; 
} 

再次,请记住,这只是说明我想它看起来像,但它不是一个令人满意的实现,因为它使用了特定的像素量。

回答

7

由于基于百分比的利润率是根据包含块的宽度计算的,因此您可以将margin-left设置为100%

Example

+0

哇,这是如此可笑的简单......我现在感觉不好没有想到的是我自己。谢谢!我会尽快接受你的回答。 –

0
#one { 
    border:2px solid #ddd; 
    width:150px; 
    height:30px; 
} 
#two { 
    border:2px solid #ddd; 
    width:50px; 
    height:30px; 
    margin-left:150px; 
    margin-top:-2px; 
    float:right; 
} 

我改变#two一点点向您展示结果。

http://jsfiddle.net/eqDyy/3/

+0

这似乎使内部股利浮动在父母的内部。我正在寻找内部股利是正确的父母。 Freejosh的回答是这样的:'margin-left:100%' –

+0

@SamuelReid我会去浮点右边的路线,因为它允许你把内容放入div而不会失去对齐的效果:[float right example](http: //jsfiddle.net/peteng/eqDyy/4/)vs [margin-left](http://jsfiddle.net/peteng/eqDyy/5/) – Pete

+0

我使用这个下拉菜单,类似于什么你可能会发现像suckerfish的儿子的东西,但suckerfish的菜单项有一个固定的宽度,我的菜单需要一个可变的宽度。 'margin-left:100%'是我可以将子菜单放在它们各自父元素的右边。 –