Jump to content
  • 0

Таблица со значениями и графиком


IVB
 Share

Question

Хочу сделать табличку с числами, и в _этих_ же ячейках фоном цветная полоска, длина которой пропорциональна числу в ячейке. И никак не могу придумать правильные стили, чтобы число располагалось _на_ фоне, а не слева/справа/снизу/сверху. Подскажите, пожалуйста, как это реализовать.

Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Примерно так

<style>
td span {
display: block;
backgroung-color: цвет шкалы;
width: размер шкалы;
}

</style>



<tr>
<td>Петров</td>
<td><span>25</span></td>
</tr>
<tr>
<td>Сидоров<td>
<td><span>50</span></td>
</tr>

Если завязать все это на джаву то все должно работать.

Link to comment
Share on other sites

  • 0
Примерно так
К сожалению, IE "так" не хочет.

Генерится вот такой кусок:

<tr><td align="left" nowrap><span class="bar-ltr" style="width: 58%;">28`549,00</span></td></tr>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 49%;">23`875,89</span></td></tr>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 32%;">15`684,01</span></td></tr>

Стили описаны следующим образом:

.bar-ltr {
display: block;
overflow: visible;
height: 100%;
background: #DBE2EA;
}

Получается вот так, а должно быть вот так (т.е. в IE минимальная ширина фона зависит от длины текста).

Т.е. правильнее всего сначала нарисовать прямоугольник, а потом поверх него (с той же позиции) вывести текст - но я так не умею.

Edited by IVB
Link to comment
Share on other sites

  • 0

Поиграйтесь со значениями top.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ru" xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
<html>
<head>
<title>Untitled</title>
<style>
.bar-ltr {
display: block;
overflow: visible;
height: 100%;
background: #DBE2EA;
}
.pos {position:relative;left:0px;top:-18px;}
</style>
</head>
<body>
<table>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 85%;"></span><span class="pos">28`549,00</span></td></tr>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 10%;"></span><span class="pos">28`549,00</span></td></tr>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 1%;"></span><span class="pos">28`549,00</span></td></tr>
</table>
</body>
</html>

Link to comment
Share on other sites

  • 0
Поиграйтесь со значениями top.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="ru" xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru">
<html>
<head>
<title>Untitled</title>
<style>
.bar-ltr {
display: block;
overflow: visible;
height: 100%;
background: #DBE2EA;
}
.pos {position:relative;left:0px;top:-18px;}
</style>
</head>
<body>
<table>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 85%;"></span><span class="pos">28`549,00</span></td></tr>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 10%;"></span><span class="pos">28`549,00</span></td></tr>
<tr><td align="left" nowrap><span class="bar-ltr" style="width: 1%;"></span><span class="pos">28`549,00</span></td></tr>
</table>
</body>
</html>

В этом примере - еще хуже.

В IE каждая ячейчка в два раза выше, чем нужно. В FF ползунок не виден, зато текст оказывается на строку выше (в предыдущей ячейке)

Link to comment
Share on other sites

  • 0
Вы от меня готовое решение ждёте что ли?

Не от Вас лично, но действительно хотелось бы получить готовое решение от тех, кто уже потрахался с документацией и напильником и нашел его.

Я вам дал вариант, который при наличии желания, документации и напильника работает так, как нужно вам.

Перед тем, как задавать вопрос на форуме, я перепробовал много разных вариантов - ни один не работает так, как нужно. Поэтому и обратился на форум - в надежде, что кто-нибудь поделится готовым решением. Наверняка ведь кто-то сталкивался с аналогичной задачей и решил ее.

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