Поиск

Соотношение свойств 'display', 'position' и 'float'

Три свойства, влияющие на создание и размещение блока - 'display', 'position' и 'float' - взаимодействуют следующим образом:
Если свойство 'display' принимает значение 'none', то агент пользователя должен проигнорировать свойства 'position' и 'float'. В данном случае элемент не породит ни одного блока.

  1. Если свойство 'position' принимает значение 'absolute' или 'fixed', то свойству 'display' присваивается значение 'block', свойству 'float' - значение 'none', а положение блока определяться свойствами 'top', 'right', 'bottom' и 'left', а также контейнером блока.
  2. Если свойство 'float' принимает значение, отличное от 'none', то свойству 'display' присваивается значение 'block', а блок становится перемещаемым.
  3. Остальные значения свойства 'display' ведут себя согласно их описанию.

Примечание. В CSS2 ничего не говорится о том, что произойдет, если значения этих свойств будут изменены в результате выполнения некоторых сценариев. Например, что произойдет, если элемент, имеющий значение 'width: auto', будет перемещен? Будет ли перемещено его содержимое или оно сохранит прежнее форматирование? Ответа на этот вопрос данный документ не дает, и поведение для различных реализаций CSS2 будет практически разным.