CSS выравнивание: горизонтальная блокировка? - PullRequest
0 голосов
/ 15 ноября 2010

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


Получили эту модель:

http://img833.imageshack.us/img833/4979/alignmentmockup.jpg

<div> #1 - фиксированный контейнер с баннером, выровненный по левому краю.

<div> #2 - это другой контейнер с фиксированной шириной.Предполагается, что он будет центрирован с использованием всего участка в качестве измерения (масштаб № 2), но не должен перекрываться с <div> #1 (масштаб № 1).


Проблема : когдаокно браузера слишком маленькое (например, изменено в размере, мобильный браузер), контейнер перекрывается с <div> #1.В зависимости от их z-индекса один из них находится поверх другого.

Подход 1 : оба контейнера имеют один и тот же z-индекс.<div> #2 имеет margin:0 auto;
, но , что не мешает им перекрываться.

Подход 2 : оба стиля position: relative; float: left; z-index: 10
но <div> #2 больше не выравнивается по центру веб-сайтов.


Поскольку это закрытая серверная часть шаблона, над которой я работаю, я не могу добавлять дополнительные контейнеры так, как хочу.У меня есть доступ только к той части HTML-файла, которая находится между <body> и началом работы веб-сайтов.Поэтому я могу добавлять только отдельные <div> (например, <div> #1), но не могу каскадировать их с остальной частью сайта (например, <div> #2).

Любая подсказка для другого подхода приветствуется!

1 Ответ

0 голосов
/ 15 ноября 2010

Ваша проблема в том, что CSS не имеет минимального поля, которое вы можете установить на div2 с шириной div1. Я помню, как недавно читал статью об этом и нашел хорошее решение от Рона Адэйра:

http://www.iamron.com/downloads/min-padding.html

Полная статья, в которой представлено более сложное решение. Затем Рон комментирует свой более простой способ получить тот же результат:

http://buildinternet.com/2009/10/purely-css-faking-minimum-margins

...