настройки dpi более 96 испортить мой сайт - PullRequest
2 голосов
/ 28 февраля 2009

Я заметил, что когда значение dpi установлено на 96, равное 120, мой сайт испортился, используя firefox или ie7. CSS в основном ломается. Кто-нибудь знает, как это исправить?

спасибо

ps сайт

http://www.iaddesignandstudio.com

Thnx

Ответы [ 2 ]

5 голосов
/ 28 февраля 2009

Сайт использует макет фиксированного размера, но смешивает единицы px и pt. При изменении dpi вашего экрана изменяется относительный размер этих единиц, то есть сайт разбит по дизайну.

Что вы должны сделать:

  • не используйте pt для макетов экрана - pt только для печати
  • прочитайте о разметке жидкости и относительной единице em
1 голос
/ 28 февраля 2009

На самом деле нет исправления, которое может предотвратить что-либо происходящее, если пользователь изменил настройку Windows DPI. Переключение Windows в режим «больших шрифтов» или установка значения DPI, отличного от значения по умолчанию, влияет на все макеты в IE.

Однако это никогда не должно вызывать массовый разрыв сайта. Некоторые вещи должны быть слегка смещены, возможно, из-за округления значений.

Сайт, на который вы указали, действительно очень сильно ломается при изменении размера шрифта - например, измените шрифт по умолчанию в браузере (или установите Firefox на «Zoom Text Only»). Текст с кнопок полностью покидает кнопки и начинает зависать в другом месте.

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

При проектировании всегда изменяйте настройку масштабирования (в IE7 и Firefox) и размер шрифта (например, в Firefox с использованием «Zoom Text Only») и убедитесь, что те вещи, которые действительно меняются в размере, не нарушают сайт , В некоторых условиях вещи, указанные в «pt», будут масштабироваться, в то время как вещи, указанные в «px», не будут.

Как вы могли это исправить

Понятно, что вы разработали все для определенного размера в пикселях, включая заголовок и все кнопки / вкладки. Если вы хотите сделать это, объявите заголовок DIV как position: относительный, и поместите H1, H2 и UL внутри него абсолютно, используя значения пикселей (относительно содержащего div). Удалите поля, отступы и т.д. из DIV, чтобы упростить. Укажите ширину, высоту и верхние поля элементов LI, используя пиксели.

Что бы я сделал

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

...