2011-12-19 47 views
0

我有這些性能如何獲得div來擴展其內容?

#content { 
background-image: url('img/cbg.png'); 
background-position: center top; 
background-repeat: repeat-y; 
width: 960px; 
margin: auto; 
padding-bottom:50px; 
margin-bottom: 20px; 
} 

背景只顯示了一個div爲70像素,(我認爲),然後停止,那麼的DIV中剩下的東西只是繼續向下像正常的頁面。如果我設置了display:inline-block,它可以正常工作,但是可以不用我的div。

+0

您是否在頁面上懸浮了任何東西?可能是浮動清除問題。 – 2011-12-19 05:05:47

+0

@TheDeeno是的,我有一個div右邊的內容div浮右。那不好嗎? – ahota 2011-12-19 05:08:50

回答

1

如果容器中的元素處於浮動狀態,則可能無法正確清除浮動元素。如果這是你的問題,那麼有一堆解決方法 - 它們被稱爲「清除修補程序」。

One of my favorite write-ups was here。他們在這個例子中使用的CSS就在這裏。

div.container { 
    border: 1px solid #000000; 
    overflow: hidden; 
    width: 100%; 
} 

div.left { 
    width: 45%; 
    float: left; 
} 

div.right { 
    width: 45%; 
    float: right; 
} 
+1

它的工作原理!謝謝! – ahota 2011-12-19 05:41:30

0

那麼,你在做repeat-y這意味着它只會重複垂直。如果背景圖像是70px,那將支持該問題。請使用repeat-x或僅使用repeat

+0

經過一些測試後,我得出結論,背景圖像的高度僅僅來自填充。 – ahota 2011-12-19 05:13:53

0

,因爲你已經在瀏覽器窗口中設置您的#content寬度960像素不會擴大下去。

如果圖片只擴展到70px,可能是因爲這是您使用的圖片的實際height。但錯誤地使用了repeat-y(重複垂直)

下面是一個簡單的概念在background-repeat

  1. 如果你想垂直重複圖像,創造的形象是橫寬。
  2. 如果要水平重複圖像,請創建一個垂直高度的圖像。