CSS – Абсолютное позиционирование или плавающее положение?

StackOverflow https://stackoverflow.com/questions/2217935

  •  19-09-2019
  •  | 
  •  

Вопрос

У меня есть базовый макет, в котором для элемента body задана определенная ширина.И поля слева и справа установлены на авто.В результате div оказывается по центру.

Теперь, когда дело доходит до позиционирования всех подэлементов внутри этого элемента div, что лучше использовать: абсолютное позиционирование или фиксированные координаты?Эти подэлементы в основном представляют собой столбцы текста, несколько изображений и несколько заголовков.Я обнаружил, что при перемещении всех них влево они складываются друг за другом.Это, в принципе, то, чего я хочу.Но не лучше ли указать координаты?Видите ли, я столкнулся с небольшой распространенной ошибкой поля в IE.И я знаю, что абсолютное позиционирование исправит ситуацию.Но будет ли это грязным решением?

Я имею в виду, что сам макет в каком-то смысле жидкий.Но у body div есть своя ширина.Таким образом, подэлементы не будут перемещаться независимо от разрешения.

Это было полезно?

Решение

Примечание:ошибку поля в IE также можно «исправить», обернув div с полем в div без поля и переместив этот внешний div.

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

Лично я бы использовал абсолютное позиционирование, если все содержимое div статично, и плавающее, если некоторые из них динамические.Но это субъективный ответ.

Другие советы

Я не вижу проблем с использованием абсолютного позиционирования.Одним из возможных недостатков может быть то, что вашу таблицу стилей будет немного сложнее поддерживать, поскольку вам придется указать ширину и положение.Если в будущем вам придется изменить ширину любого из ваших столбцов, вам придется обновить значение пикселя в двух местах.IMO, использующий float и маржу, будет легче изменить в будущем.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top