[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Динамический CSS
Gandjubas
Встала такая проблема:
Есть прородитель класса - level
есть его дети - level1, level2, level3 и.т.д
количество детей генерируется автоматически
дети, чем старше, тем дальше стоят от левой границы
как мне, не прописывая свойства для каждого из детей заставить браузер в зависимости от цифирки высчитывать отступ самого.



Спустя 16 минут, 18 секунд (19.04.2007 - 17:04) Timok написал(а):
нифика непонятно smile.gif приведи пример, или код, или просто объясни подробнее

что типа того?
Код
<style type="text/css">
div.level{
background:#ccc;
margin-left:50px;
}
div.level div.level1{
background:#eee;
margin-left:50px;
}
</style>

<div class="level">
Level
<div class="level1">Level 1</div>
</div>

Спустя 3 дня, 15 часов, 15 минут, 56 секунд (23.04.2007 - 08:20) Gandjubas написал(а):
Код
<style type="text/css">
.lev1 {padding-left: 5pt;}
.lev2 {padding-left: 20pt;}
.lev3 {padding-left: 35pt;}
.lev4 {padding-left: 50pt;}
.lev5 {padding-left: 65pt;}
.lev6 {padding-left: 80pt;}
.lev7 {padding-left: 95pt;}
.lev8 {padding-left: 110pt;}
.lev9 {padding-left: 125pt;}
.lev10 {padding-left: 140pt;}
.lev11 {padding-left: 155pt;}
.lev12 {padding-left: 170pt;}
.lev13 {padding-left: 185pt;}
.lev14 {padding-left: 200pt;}
.lev15 {padding-left: 215pt;}
.lev16 {padding-left: 230pt;}
.lev17 {padding-left: 245pt;}
.lev18 {padding-left: 260pt;}
.lev19 {padding-left: 275pt;}
.lev20 {padding-left: 290pt;}
.lev21 {padding-left: 305pt;}
.lev22 {padding-left: 320pt;}
tr.author { background-color: #cccccc;}
tr.message { background-color: #eeeeee;}
p.message { text-align: justify;}
</style>



Код
<table width="100%" border="0" cellpadding="3pt" cellspacing="0">
<tr class="author">
<td class="lev1">Stas</td>
</tr>
<tr class="message">
<td class="lev1"><p class="message">Здесь вы можете...</p></td>
</tr>
<tr class="message">

<td class="lev1" align="right">Ответить</td>
</tr>
<tr class="author">
<td class="lev2">алекс</td>
</tr>
<tr class="message">
<td class="lev2"><p class="message">здравствуйте ,я Александр хочу ...</p></td>

</tr>
<tr class="message">
<td class="lev2" align="right">Ответить</td>
</tr>
<tr class="author">
<td class="lev2">Just</td>
</tr>
<tr class="message">

<td class="lev2"><p class="message">У вас в ...</p></td>
</tr>
<tr class="message">
<td class="lev2" align="right">Ответить</td>
</tr>
<tr class="author">
<td class="lev3">Stas</td>

</tr>
<tr class="message">
<td class="lev3"><p class="message">Amulet ...</p></td>
</tr>
<tr class="message">
<td class="lev3" align="right">Ответить</td>
</tr>



вот
надо это реализовать не пися для каждого уровня отступ.
потому как неизвестно сколько будет уровней.

Спустя 43 минуты, 56 секунд (23.04.2007 - 09:04) TRIAL написал(а):
Цитата(Gandjubas @ 23.4.2007, 9:20) [snapback]18852[/snapback]
пися

Да, это лучше всего охарактеризовывает твой код.

А не проще при выводе делать так:
Код
$z=0;

for($i=0; $i<20; $i++) {

echo "<p style='margin-left: $z'>...</p>";

$z += 20;
}


и будет тебе каждый раз отступ увеличиваться. Ничем не отличается от твоего способа с CSS.

Спустя 5 часов, 2 минуты, 14 секунд (23.04.2007 - 14:06) Gandjubas написал(а):
Мне эта идея пришла сразу в голову.
Только представляете как это некрасиво выглядит.
Я в данном вопросе борюсь за красоту кода!

Спустя 1 час, 14 минут, 8 секунд (23.04.2007 - 15:20) TRIAL написал(а):
Красота не всегда идет скрипту на пользу. Да, хорошо когда все стили прописаны в css, но порой надо и хтмл коде стили прописывать чем фигней страдать. По большому счету эта красота только тебе нужна, а людям нужно чтоб всё работало быстро и правильно и им плевать сделаешь ты 1 стиль для всех или каждому элементу будешь его прописывать. Я лично пользуюсь и тем и тем.


_____________
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.