Forum Webscript.Ru
Дизайн и Верстка => Всё о Html => Тема начата: YA от 10 Сентября 2002, 00:25:42
-
Вроде простейшая задачка, но никак не могу корректно решить. Есть дерево (каталог и т.п.), которое отображается примерно следующим образом ("-" - пробелы; "#" - маркер):
# Заголовок 1 (уровень 1)
--# Подзаголовок 2 (уровень 2)
----# Подзаголовок 3 (уровень 3)
------# Подзаголовок 4 (уровень 4)
------# Подзаголовок 5 (уровень 4)
------# Подзаголовок 6 с о-о-о-о-о-очень
длинным названием (уровень 4)
------# Подзаголовок 7 (уровень 4)
------# Подзаголовок 8 (уровень 4)
Вместо пробелов может быть gif-распорка определенной ширины или что-то еще - не принципиально. Все это запихивается в относительно узкий столбец таблицы и возникает проблема с длинными названиями. Хотелось бы так:
# Заголовок 1 (уровень 1)
--# Подзаголовок 2 (уровень 2)
----# Подзаголовок 3 (уровень 3)
------# Подзаголовок 4 (уровень 4)
------# Подзаголовок 5 (уровень 4)
------# Подзаголовок 6 с о-о-о-о-о-очень
------- длинным названием (уровень 4)
------# Подзаголовок 7 (уровень 4)
------# Подзаголовок 8 (уровень 4)
Все, что сейчас приходит в голову, либо отказывается работать в Netscape, либо подразумевает неоправданно сложный (или несовсем корректный) алгоритм...
Если использовать вложенные списки (что кажется логичным), то проблемы такие: нужен нулевой отступ слева, вместо стандартного маркера нужен (желательно) определенный символ и, наконец, в Netscape должно работать.
Если использовать таблицы, то Netscape, как положено, плевать хотел на "нежелательный" (по спецификации) атрибут "width".
Вроде должно быть какое-то простое решение. Может, кто подскажет?
-
Если использовать таблицы
Не надо этого делать
Типа того
-
ThE0ReTiC
Не получается в Netscape управлять размером отступа слева - нужно намного компактнее, чем стандартные списки (см. выше проблемы со списками).
-
Согласен с ThE0ReTiC, что в данном случае глупо использовать таблицы.
YA
А разве через стили сложно задать необходимый отступ слева и даже расстояние между строк?
-
Не получается в Netscape управлять размером отступа слева - нужно намного компактнее, чем стандартные списки (см. выше проблемы со списками)
есть такая штука CSS называется. при помощи свойств margin-left, margin-top, margin-bottom можно установить именно те расстояния которые тебе нужны. или же line-height... много способов, даже неправильных :)
-
margin-left, margin-top, margin-bottom
ТОлько приходится для каждого броузера свой стиль прописывать. НН хоть и понимает эти стили для списков, но отображает их на редкость криво.... насчет оперы не знаю, честно говоря....
Если код генерится скриптом, я бы делал с помощью таблиц.
-
есть такая штука CSS называется
[OFF]Правда, что ли?[/OFF]
Я уже два раза написал, что не получается изменить отступ в Netscape. Если вложенные списки, то в том и вопрос, что дописать:
Конкретным опытом кто-нибудь может поделиться?
-
у меня работает
но работает, мягко скажем, непредсказуемо и глючно....
-
Metaller
Если код генерится скриптом, я бы делал с помощью таблиц.
кривовато немного. они для этого не предназначены. я сам понимаю, пробовал работать с этими свойствами, правда намучался с разными броузерами в том числе и с IE. в конце концов, надо писать не под броузеры, а под стандарты имхо. мозилла - пример тому.
YA
Правда, что ли?
[OFF]не стоит это так воспринимать, не в обиду было сказано. сорри, если это нанесло тебе такой удар...[/OFF]
Конкретным опытом кто-нибудь может поделиться?
как заломать нетскейп, сорри не подскажу, потому что забыл что такой броузер есть :)
-
у меня работает но работает, мягко скажем, непредсказуемо и глючно
почему ты не проставляешь единицы измерения? пикселы, пункты и тп.
-
надо писать не под броузеры, а под стандарты
Люди-то пользуются не стандартами, а браузерами, к сожалению... :)
они для этого не предназначены
Изначально, таблицы, вообще для верстки не предназначались, а оказалось, что удобно....
-
почему ты не проставляешь единицы измерения? пикселы, пункты и тп.
Я проставляю. Просто тут забыл. :)
-
Люди-то пользуются не стандартами, а браузерами, к сожалению
не могу противоречить :) вот если бы пользовались нормальными - тогда было бы проще на много.
Изначально, таблицы, вообще для верстки не предназначались, а оказалось, что удобно
вот некоторое время назад я попробовал пользоваться div\'ами - очень удобно, даже можно сказать удобнее в несколько раз. код компактнее и читабельнее получается. правда при использовании дивов можно наткнуться тоже на некоторые подводные камни, разбросанные теми же изготовителями броузеров, в частности IE.
-
Есть хак, чтобы писать под НН отдельные стили:
http://richinstyle.com/masterclass/crossbrowser.html
Но я, честно говоря, забил бы на НН вовсе. Или затребовал за совместимость с ним совсем отдельных денег ;) $)
-
А если каждый пункт писать в отдельную таблицу в два столбца - не получится то, что надо?
-
Люди-то пользуются не стандартами, а браузерами, к сожалению...
Золотые слова!
А если каждый пункт писать в отдельную таблицу в два столбца - не получится то, что надо?
Да, я даже такой изврат пробовал:Netscape, как положено, плевать хотел на "нежелательный" (по спецификации) атрибут "width"
-
Netscape, как положено, плевать хотел на "нежелательный" (по спецификации) атрибут "width
Ставь распорку прозрачным гифом. И не будет он плевать :-)))
-
:) Посмотри на задачку: в правой колонке там нельзя поставить распорку (негде).
-
Впрочем, если эта распорка высотой 1px, то можно попробовать - по вертикали растянется не сильно.
Но это будет уж совсем кривой способ, для каждой строки: своя таблица и по 2 gif-а.
Ну если других идей нет...
PS. Всем спасибо за советы!