2017-11-10 92 views
-2

我有4个divs,outerinner,titlecontent。我想将inner div放在外部,titlecontent - 在inner div之内,一个在另一个之上。我定位外部和内部divs相对和另外2 - 绝对。DIV溢出其容器

inner DIV不谋而合内thew outer,但titlecontent溢出inner股利。

我该如何解决我的CSS?

#outer { 
 
    width: 90%; 
 
    margin: 20px auto; 
 
    border: 2px solid red; 
 
    height: 500px; 
 
    position: relative; 
 
} 
 

 
#inner { 
 
    width: 100%; 
 
    border: 1px solid green; 
 
    height: 300px; 
 
    position: relative; 
 
} 
 

 
#inner .title { 
 
    width: 100%; 
 
    height: 63px; 
 
    padding-left: 1%; 
 
    padding-top: 5px; 
 
    border-radius: 2px; 
 
    float: left; 
 
    border: 1px solid blue; 
 
    background-color: lightblue; 
 
    position: absolute; 
 
    top: 0; 
 
} 
 

 
#inner .content { 
 
    padding: 2em 2em; 
 
    width: 100%; 
 
    height: 100%; 
 
    margin: 0 auto; 
 
    background: #FFF; 
 
    height: auto; 
 
    display: block; 
 
    float: left; 
 
    border: 2px solid orange; 
 
    position: absolute; 
 
    top: 20%; 
 
}
<div id="outer"> 
 
    <div id="inner"> 
 
    <div class="title"></div> 
 
    <div class="content"></div> 
 
    </div> 
 
</div>

+0

我想这可能是有用的https://developer.mozilla.org/en-US/docs/Web/CSS/transform - 功能/ translateY(但为什么你不能只是改变html结构?) - 我没有DV BTW –

回答

0

#outer { 
 
    width: 90%; 
 
    margin: 20px auto; 
 
    border: 2px solid red; 
 
    height: 500px; 
 
    position: relative; 
 
} 
 

 
#inner { 
 
    max-width: 100%; 
 
    border: 1px solid green; 
 
    height: 300px; 
 
    position: relative; 
 
padding: 0 5px; 
 
} 
 

 
#inner .title { 
 
    width: 100%; 
 
    height: 63px; 
 
    padding-top: 5px; 
 
    border-radius: 2px; 
 
    border: 1px solid blue; 
 
    background-color: lightblue; 
 
} 
 

 
#inner .content { 
 
    width: 100%; 
 
    height: 63px; 
 
    background: #FFF; 
 
    display: block; 
 
    border: 1px solid orange; 
 
}
<div id="outer"> 
 
    <div id="inner"> 
 
    <div class="title"></div> 
 
    <div class="content"></div> 
 
    </div> 
 
</div>

0

,以防止溢出titlecontent对方只是分配一个relative位置,他们并分配absolute位置其父。就这样

#outer { 
    width: 90%; 
    margin: 20px auto; 
    border: 2px solid red; 
    height: 500px; 
    position: relative; 
} 

#inner { 
    width: 90%; 
    border: 1px solid green; 
    height: 300px; 
    position: absolute; 
} 

#inner .title { 
    width: 100%; 
    height: 63px; 
    padding-left: 1%; 
    padding-top: 5px; 
    border-radius: 2px; 
    float: left; 
    border: 1px solid blue; 
    background-color: lightblue; 
    position: relative; 
    top: 0; 
} 

#inner .content { 
    padding: 2em 2em; 
    width: 100%; 
    height: 100%; 
    margin: 0 auto; 
    background: #FFF; 
    height: auto; 
    display: block; 
    float: left; 
    border: 2px solid orange; 
    position: relative; 
    top: 20%; 
} 
<div id="outer"> 
    <div id="inner"> 
    <div class="title"></div> 
    <div class="content"></div> 
    </div> 
</div> 
+0

试图,但标题和内容仍然溢出内部分区 – ElenaDBA

+0

尝试分配位置:相对于他们所有。 – samehanwar

+0

仍然溢出 – ElenaDBA