Почему я не должен использовать position:absolute для расположения всего?

Этот вопрос задает один из моих студентов, и я хочу просветить его с примером:

"Почему мы не должны создавать расположение сайта кнопкой AP Div DreamWeaver, легче сделать расположение с Отделением AP вместо этого Float+margin+padding и если этот метод не корректен тогда, почему это не хороший метод и почему Adobe, дающий эту кнопку в DreamWeaver для создания расположение, даже если это не корректный способ сделать расположение?"

Может любой объяснять, с примером, простым и кратким, почему position:absolute не должен использоваться для расположения всего?

Я знаю, что position:absolute не хорош, но я неспособен объяснить приятно или обеспечить любые примеры.

19
задан Shog9 16 February 2010 в 18:06
поделиться

5 ответов

Относительные Divs


Плюсы - Во-первых, они позволяют вашему сайту обрабатывать изменения в содержании. ЕСЛИ вы должны были использовать все абсолютные теги div, ваши теги могли бы легко перекрываться и скрывать друг друга при изменении данных в них. Во-вторых, многие хорошие сайты позволяют обертывать информацию в зависимости от разрешения экрана и размера браузера, который пользователь использует для доступа к веб-странице.


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

Absolute Divs


Плюсы - Во-первых, они решают проблему небольшого количества контента, разбросанного по большей площади. Обычно это происходит с данными заголовка или сильно графическими сайтами. Иногда у вас будет большая область с фоновым изображением, и у вас будет несколько элементов управления по краям и посередине, которые необходимо разместить точно. Относительные div в этом случае будут головной болью, так как вам понадобится несколько дополнительных div, и они легко сломаются, когда пользователь изменит размер своего браузера или получит доступ к сайту с экрана с небольшим разрешением. Другое важное применение Absolute div - это выталкивание содержимого из области, в которой он изначально находился. Отличный пример этого - меню! Заголовок меню обычно содержится в одном блоке div, но при наведении курсора на заголовок меню элементы внутри него попадают в другой блок. Кроме того, всплывающие подсказки и другие элементы, появляющиеся на экране, обычно требуют абсолютного позиционирования.


Минусы - Абсолютные div сталкиваются с той же проблемой, что и относительные, если они используются неправильно. Проблема в том, что ими становится утомительно управлять. В частности, если вы использовали 10 абсолютных div для управления областями содержимого, и одна из этих областей стала больше или меньше из-за изменения содержимого, вам, возможно, придется изменить расположение каждого отдельного div. На что потребуется много времени.


В заключение - Много раз вы захотите использовать сайт с абсолютными и относительными разделами div не только потому, что они оба служат определенной цели, но и потому, что, используя их вместе, вы можете создавать самые красивые веб-страницы с наименьшим количеством времени и кода.

25
ответ дан 30 November 2019 в 02:52
поделиться

Ну, во-первых, вы не знаете размер экрана для каждого устройства, которое может получить доступ к вашему сайту. Большинство из них, вероятно, будут иметь полноразмерные дисплеи (800 x 600 или, вероятно, больше), но некоторые будут иметь широкий формат (например, 1440 x 900), а некоторые могут быть мобильными устройствами.

Разрешить каждому устройству размещать элементы вашей страницы в соответствии с правилами, например Float, margin, padding - означает, что каждое устройство может оптимизировать контент для своего собственного отображения.

9
ответ дан 30 November 2019 в 02:52
поделиться

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

4
ответ дан 30 November 2019 в 02:52
поделиться

Sql Server предоставляет несколько хороших инструментов, которые позволяют увидеть, какие индексы действительно используются. В этой статье, http://www.mssqltips.com/tip.asp?tip=1239 , приводятся некоторые запросы, которые позволяют лучше понять, сколько используется индекс, а не сколько он обновляется.

-121--712619-

Ваша общая библиотека находится в пути загрузки библиотеки или в пути поиска приложения во время выполнения? Похоже, динамический компоновщик не может найти вашу библиотеку. Попробуйте запустить ldd в приложении, чтобы узнать, можно ли найти библиотеку во время выполнения, например :

$ ldd /usr/bin/less
    linux-gate.so.1 =>  (0x0072a000)
    libncurses.so.5 => /lib/libncurses.so.5 (0x00c68000)
    libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x007c7000)
    libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00286000)
    /lib/ld-linux.so.2 (0x002a1000)

Для получения дополнительной информации о путях поиска в библиотеке см. справочную страницу ld.so (8) .

-121--2521488-

OK, так что, скажем, вы абсолютно все позиционируете. Что происходит, когда # mainContent содержит один абзац на одной странице и два абзаца на второй странице. Куда помещается # нижний колонтитул в пикселях? Что произойдет, если пользователь увеличит размер шрифта?

Dreamweaver предоставляет кнопку, потому что абсолютное позиционирование иногда полезно. Это не делает его всегда полезным.

7
ответ дан 30 November 2019 в 02:52
поделиться

Боже мой, потрясающее время! Сегодня была хорошая статья о хакерских новостях: http: //www.barelyfitz.com / screencast / html-training / css / positioning /

Это в основном показывает вам различные типы позиционирования: относительное, абсолютное, плавающее и т. д., а также почему их использовать. Не забывайте позицию: fixed подходит для чего-то вроде легенды, постоянно появляющейся на странице.

Я знаю позицию: absolute - это не хорошо, но я не могу хорошо объяснить или привести какие-либо примеры.

Дело не в том, что это нехорошо. Это. Просто это не решение всех проблем. Точно так же, как молоток не является хорошим решением для вкручивания лампочки, но это не означает, что молоток плохой инструмент. (надеюсь, аналогия поможет)

1
ответ дан 30 November 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: