2014-10-08 61 views
0

如何對齊添加此文本是否正確?使用空格和預標籤進行文本對齊

我的代碼:

data[0]=hello 123 
data[1]=hellowq 345 
data[2]=heloowaaa 678 
for (var i = 0; i < data.length; i++) { 
    obj += "<pre><li>" + data[i] + "</li></pre>"; 
} 

我的實際輸入:

hello   123 
hellowq   345 
heloowaaa  678 

output : 
hello   123 
hellowq   345 
heloowaaa   678 

我想獲得的輸出是這樣的:

hello   123 
hellowq   345 
heloowaaa  678 
+1

什麼樣的數據帶有'數據[I]'..?您可能需要修改佈局以獲取該類型的視覺效果。 – 2014-10-08 06:55:41

+0

您是否可以引以爲豪的其他代碼? – 2014-10-08 06:57:39

+0

我提到輸入你好123 hellowq 345 heloowaaa 678 – 2014-10-08 06:57:49

回答

0

你有無效的HTML,該只有<ul>或的有效子女0是<li>元素;在<pre>元素應該是<li>元素:

for (var j = 0; j < data.length; j++) { 
    obj += "<li><pre>" + data[i] + "</pre></li>"; 
} 

而對於設置爲white-space: pre-wrap(或類似)的<pre>元素的CSS,這是該元素的通常默認樣式,但它可能是默認值在您的瀏覽器中被覆蓋或設置不同。

0

正如我在評論中聲稱的那樣,您可能會爲每個標籤/值對添加相同數量的空格。解決方案可能是在代碼中,我們沒有看到你將不得不從生成的空白數量中減去標籤+值的長度。

更好的方法來做到這一點將是在HTML/CSS的佈局,而不是。一個快速而骯髒的例子。

HTML

<ul> 
    <li>Domdido <span class="value">$8</span></li> 
    <li>Domdido123 <span class="value">$8</span></li> 
</ul> 

CSS:

ul{list-style:none;padding-left:0; 
    width:50%; 
} 
.value{float:right;} 

http://jsfiddle.net/tqs2rvrd/

+0

單個字符串只能像這樣對齊而不是單獨的值 – 2014-10-08 07:22:24

+0

data [0] = hello 123 data [1] = hellowq 345 data [2] = heloowaaa 678 – 2014-10-08 07:23:19

+0

是的,既然你說'腳本中增加了額外空格'你有足夠的控制權將它們分成不同的值。否則,正如我所說的,你必須修改'額外的空間添加'部分。 :) – Luc 2014-10-08 07:25:51