2011-05-10 30 views
0

我正在一個網站上,客戶正在尋找實施「gimmic」,短版本是頁面將是非常寬,不是很長。django遞增div位置

我遇到的問題如下: 給出了一個對象列表,我想將它們無限期地放在右邊。

我目前正在制定(簡體):

{% for x in list %} 
    <div style="position:absolute; left:{% widthratio forloop.counter0 1 400 %}"> 
     <img src="{{ x.image.url }}" alt="{{ x.title }}"/> 
    </div> 
{% endfor %} 

我相信這是一個相當黑客,正在尋找實現更好的方法。最大的目標是無論瀏覽器的大小如何,項目保持一致,並且滾動條允許導航到右側。

在此先感謝您的幫助!

回答

2
+0

感謝您的簡單解決方案! – Valchris 2011-05-11 13:38:40

+0

在IE無法正常工作:( – Valchris 2011-05-12 16:31:17

+1

@Valchris我建議您使用[this](http://code.google.com/p/html5shim/)強制IE瀏覽器的行爲類似於網絡瀏覽器 – seler 2011-05-12 19:17:42

-1

這是一個CSS問題,而不是Django問題。

在任何情況下,把東西排列在一起的方法是使它們浮動。

<div style="float:left;"> 
    <img...> 
</div> 

實際上,你應該在某個樣式表的樣式中給出一個引用該樣式的類。

+0

我除去樣式表,並用於簡單的樣式標籤。我試過浮動,但如果項目超過瀏覽器的長度,他們開始一個新的行,是我錯過了別的? – Valchris 2011-05-10 19:25:23

+0

不,你是對的。在這種情況下浮動不會達到你想要的(一個越來越寬的頁面)。花車將始終包裹以適合其集裝箱的寬度。 – 2011-05-10 20:38:10

-1

如果您使用絕對定位,您不必擔心元素受到尺寸的限制,只要您給它的樣式爲display: inline;即可。通過這樣做,它將相對於其內部元素的大小而增長。您應該使用display: inline;和/或float: left;以確保您的內部元素不會闖入下一行。

+0

在回答問題之前,唯一比閱讀問題更糟的是與其他人一樣發佈相同的答案。老兄想要一個不斷擴大的頁面。浮動和內聯**不會工作,因爲它們總是會在瀏覽器窗口的極限處換行。 – 2011-05-10 20:40:04