2011-08-01 13 views
1

我有這行javascript創建商店位置列表,並在地圖下創建一個DIV。這些項目從頁面頂部到底部顯示。使用Javascript和CSS左對齊

我想顯示在一行,從左到右,從上到下排列的項目。

功能是這樣的:

function createSidebarEntry(marker, name, address, city, state, zipcode, telephone, images, url) { 
    var div = document.createElement('div'); 
    var html = "<p><a href='http://" + url + "'>" + name + "</a><br/>" + address + "<br/>" + city + ", " + state + " " + zipcode + "<br/>" + (formatPhone(telephone)) + "</p>"; 
    div.innerHTML = html; 
    div.style.marginBottom = '5px'; 
    return div; 
} 

作爲一個側杆的問題,將表是優選的方法? 我試圖設置DIV爲:

#sidebar { 
    text-align: left; 
    margin: 0px auto; 
    padding: 0px; 
    border:0; 
    width:665px; 
    font-size:10pt; 
    font-family:Arial; 
    color:#656668; 
    display: table-cell; 
} 

而且隨着利潤率的工作,等以後不幸的是,我似乎用完了運氣。有沒有人能夠使用動態返回的數據,並在CSS中應用三列格式?我一直在使用Google,我看到的所有內容都指向我在DIV容器中創建三種列樣式。

+0

你也應該給你的文章一個更具描述性的標題。與你的實際問題有關的東西。 – nthpixel

+0

我的歉意,謝謝! –

+0

@nthpixel:如果你認爲該帖子可以改進,你可以自由[建議編輯](http://stackoverflow.com/posts/6894206/edit)。 +2代表你也這麼做! –

回答

1

嘗試使用固定的width設置父元素,並將float應用於孩子,width33%。之後不要忘記使用clear

0

我會建議用jquery創建你的元素。它更容易,更優雅。

但是問題的根源在於您需要爲您的div添加float:left;樣式。這將把你所有的div放在同一行。

哦,儘量少用表格來排列頁面上的元素。 Div和CSS是要走的路。