CSS и наследование...тонкая штука...

12
wilelf
На сайте с 27.06.2005
Offline
322
#11
Ткач:
wilelf
кстати вопрос оффтопом, помимо кучи лишнего кода и атрибутов, почему вы используете не class, а id ? не стоит путать их между собой.
иногда проскакивают лишние слэши как тут

а блоку зачем то задается атрибут назначающий блок блоком, где этого не нужно

я не знаю другого способа наследования, кроме id. Верстальщик из меня тот еще.

wilelf добавил 05.04.2008 в 01:06

dimuch:
Почистить забыли после правого блока
<div id="right">asdsad</div>
<div style="clear:both"></div>(или <div class="clear"></div> c clear:both в css-файле)
</div>
<div id="footer">

А зачем что-то чистить? Не видел ни разу такого...

Агентство контекстной рекламы НеВсем ( https://www.nevsem.ru/ ) Пишу платно статьи для Хабра. Мой профиль ( https://habr.com/ru/users/wilelf/ )
D
На сайте с 11.03.2008
Offline
15
#12
wilelf:
А зачем что-то чистить? Не видел ни разу такого...

Контейнер, содержащий плавающие элементы, автоматически не растягивается по высоте этих элементов (кроме IE). Чтобы "растянуть" родительский блок, надо отменить обтекание - вставить элемент со стилем {clear: both;} (есть и другие способы, но с ними пока лучше не заморачиваться).

В оригинальном коде блок "container" просто не работает как планировалось, потому что имеет высоту, равную высоте блока "top".

Почему - так в спецификации записано, а то что в ие и опере работает - баги.

Ткач
На сайте с 29.04.2007
Offline
95
#13

wilelf, наследуются все внутренние вложенные теги.

Тег в котороый вложен следующий, называется родительским, а вложенный в него дочерним. В свою очередь родитель родителя будет для вложенного предком, а вложенный потомком. Всё как у людей)

И не важно используется ли class или id или это вообще table без класса.

Id используется только для уникального определения стиля, которое может быть использованно только в одном месте. class можно использовать сколько угодно.

+ ко всему id зачастую необходимо при программировании, поэтому не следует его занимать, когда можно использовать class , так же может быть полезно id как дополнительный заданный параметр уже к существующему классу.

<div id="container" bgcolor="#FFFFFF">

зачем вы здесь задали белый фон? у вас уже есть в css

#top, #footer, #container, #left, #right {
background: #ffffff;
}

Причем если у вас container является предком для всех, то для чего в этот стиль вписывать и шапку и подвал и лево и право.

чтобы убедится в том, что контейнер охватывает их все задайте стиль

<div id="container" style="border: 1px solid red;">

наглядно видно это станет

<div id="right">asdsad
</div>

я так понимаю у вас не сработало

как и id="left"

для этих блоков необходимо усьанавливать фиксированную ширину и обтекание, а после центральной части почистить clear: both;

Разработка и создание сайтов. Красиво, функционально, недорого. (http://time-online.ru/) ICQ 388-474-890)
wilelf
На сайте с 27.06.2005
Offline
322
#14
Ткач:
wilelf, наследуются все внутренние вложенные теги.
Тег в котороый вложен следующий, называется родительским, а вложенный в него дочерним. В свою очередь родитель родителя будет для вложенного предком, а вложенный потомком. Всё как у людей)

Ну, Вы уж совсем меня идиотом не считайте :)

Ткач:

И не важно используется ли class или id или это вообще table без класса.
Id используется только для уникального определения стиля, которое может быть использованно только в одном месте. class можно использовать сколько угодно.
+ ко всему id зачастую необходимо при программировании, поэтому не следует его занимать, когда можно использовать class , так же может быть полезно id как дополнительный заданный параметр уже к существующему классу.

Да, по программированию - это верно. Но вот как с помощью класса задать стиль для дочернего?

Т.е. как будет выглядеть конструкция

#top a {} и #top .logo {}

Ткач:

зачем вы здесь задали белый фон? у вас уже есть в css

Уже отчаялся, и начал втыкать стили непосредственно в html

Ткач:

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

Я использую плагины для ФФ...отчаялся :(((.

Ткач:

для этих блоков необходимо усьанавливать фиксированную ширину и обтекание, а после центральной части почистить clear: both;

Да, а вот это помогло.

Snowman
На сайте с 29.05.2006
Offline
80
#15
wilelf:

Да, по программированию - это верно. Но вот как с помощью класса задать стиль для дочернего?

Т.е. как будет выглядеть конструкция

#top a {} и #top .logo {}

так и будет выглядеть

.top a {} и .top .logo {}

если я правильно понял о чем вы...

Дизайн сайтов + готовые макеты на продажу (от 35wmz) (/ru/forum/840033)
Ткач
На сайте с 29.04.2007
Offline
95
#16

или

div.top a {} и div.top div.logo {}

только зачем? из этих вариантов дочерний только первый с ссылкой, второй бестолку так записывать, вот если бы например так:

div.top div{} или div.top a img

то уже смысл имеет, но в данном случае сокращение записей лежит только в переверстке

wilelf
На сайте с 27.06.2005
Offline
322
#17
Ткач:
то уже смысл имеет, но в данном случае сокращение записей лежит только в переверстке

Знаю, что я наглый, но как :)???

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий