隐藏溢出似乎不起作用

时间:2012-04-14 15:28:31

标签: html css

我有一个div包含文本,图像和文本详细信息在ul li及以下是html结构。我已将隐藏的溢出应用于类.sbox但它似乎不起作用,文本细节似乎没有隐藏和溢出。

JSFiddle - http://jsfiddle.net/SAN6n/

HTML

<div id="content" class="contentList">
  <ul id="slist" class="storyList">    
    <li>
     <div id="storyBox1" class="sbox"> 
        <div class="boxContent" >
            <span class="overlay"><h5>Picture1 </h5></span>
            <div class="txtOverlay"><h3>This is spring and weather looks good ...</h3</div>
            <span><img src="http://img13.imageshack.us/img13/38/picture11tp.jpg"/></span>
         </div>
      </div>
     </li>    
    </ul>
</div>​

CSS

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


.sbox {
float:left;
width:300px;
height:150px;
padding: 5px 7px 8px 5px;
margin-top:20px;
margin-right:40px;

background:white;
border:1px solid #DDD;

<!--border radius-->
-webkit-border-radius: 3px;
-moz-border-radius: 2px;
border-radius: 3px;

overflow: hidden;

}

.boxContent {

width:100%;
height:100%;
border: 1px solid #777;
}

.storyList li {
list-style:none;
}

.overlay {

float:left;
opacity: .7;
background: #000;  
height: 40px;  
width: 300px; 
position: absolute;    
}


h5{
float:left;
margin-top:0px;
padding:0 0 0 5px;
font-family: Tahoma;
letter-spacing: 0.5px;
font-size:30px;
color: white; 

}


.txtOverlay {
opacity: .7;
background: #000;  
height: 110px;  
width: 300px; 
position: absolute;        
margin-top:150px;
z-index:1;
font-weight:bold;
float:left;
font-family: OpenSansRegular;
letter-spacing: 0.5px;
font-size:10px;
color: white;

}​

4 个答案:

答案 0 :(得分:13)

DEMO

我认为这是你需要的吗? 每当two div's一个inside另一个first div需要设置为relativeother div需要设置为absolute位置。

答案 1 :(得分:4)

这是因为你使用绝对位置。你不能使用绝对溢出的位置绝对,因为位置绝对会使目标元素与文档结构一起移出上下文。

答案 2 :(得分:2)

实际上它正在运行,你提供的填充及其内容,它使得它无法应用overflow:hidden;

请参阅此demo以查看我的观点,我已降低高度,overflow:hidden正在运行。

答案 3 :(得分:1)

当你给元素一个绝对位置时 - 它也可以放在div的边界之外 - 因此 - 隐藏的溢出不应该影响它