Jump to content
  • 0

Выравнивание данных таблицы относительно заданного символа


AstIIL
 Share

Question

7 answers to this question

Recommended Posts

  • 0
Задача:

допустим есть таблица с данными

0.33

23.34

0.3445

234.56666

нужно выровнять их по "."

нашел в хтмл параметр align="char" но он не работет =(

как это можно реализовать? ксс, ява?

Ява? Ява точно не поможет.

Javascript - поможет

Link to comment
Share on other sites

  • 0

а если пойти другим путем? сделать 2 колонки и в первой с align=right выводить скажем 324. а во второй с align=left выводить знаки после точки. Если между этими колонками не делать отступов и границ - сойдет за одно число. И выравнивание будет нужным. Кстати выделить число тоже можно будет целиком без проблем:

<table width="0" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align='right'>288.</td>
<td>3</td>
</tr>
<tr>
<td align='right'>35.</td>
<td>7561</td>
</tr>
<tr>
<td align='right'>0.</td>
<td>239</td>
</tr>
</table>

Если данные вводятся руками - проблем никаких, если данные выводятся программно - нужно выводить их в левую колонку, а затем скриптом отсеивать знаки после точки в правую. Я думаю с написание скрипта проблем не возникнет. Если что - помогу.

Link to comment
Share on other sites

  • 0

Так, феникс не в теме.

Скрипт в пару строчек, кроссбраузерен (кроме 5.5 осла но могу и для него исправить):

<!-- Выгружаем данные в один столбик таблицы -->

<table width="0" border="0" cellspacing="0" cellpadding="0">
<tr><td align='right' class="n">288.3</td><td></td></tr>
<tr><td align='right' class="n">35.7561</td><td></td></tr>
<tr><td align='right' class="n">0.239</td><td></td></tr>
</table>

<!-- пускаем скрипт и он рубит по точке на 2 столбца собирая ячейки по классу -->

<script>
separate = function(){var e,i,z,s;e=document.getElementsByTagName('*');for(i=0;i<e.length;i++){z=e[i];if(z.className=='n'){s = z.innerHTML.split('.');z.nextSibling.innerHTML=s[1];z.innerHTML=s[0]+'.'}}}
separate();
</script>

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy