Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Вёрстка веб-сайтов > Резинка на дивах


Автор: annsar 9.12.2007, 03:42
Подскажите пожалуйста вот что:
необходимо сделать трехколоночный макет на дивах, причем и 1, и 2, и 3 колонки должны тянуться по ширине (т.е. заданы в %) а общая ширина этих трех колонок должна быть фиксирована, т.е. скажем 780px, чтобы при желании можно было ширину изменить. Если у кого есть готовые шаблы, буду благодарен.

Автор: WebDisaster 9.12.2007, 13:36
Цитата(annsar @  9.12.2007,  03:42 Найти цитируемый пост)
общая ширина этих трех колонок должна быть фиксирована, т.е. скажем 780px, чтобы при желании можно было ширину изменить.

Вот это место не понял совсем.  Что значит "фиксированная, чтобы можно было ширину изменить"? 780px -- это минимальная суммарная ширина для трёх колонок? Или максимальная? Или фиксированная? Или???

Автор: annsar 9.12.2007, 14:36
скажем я захочу из сайта шириной 780px сделать сайт 990px, тогда 1, 2 и 3 колонки автоматически растянуть по ширине, т.к. у них ширина определена в %

Автор: WebDisaster 9.12.2007, 15:55
Я всё равно не понял задачу. Вы хотите иметь какой-то универсальный трёхколоночный шаблон, по которому потом будете верстать разные сайты с разной фиксированной шириной? 

Не вижу в этом большого смысла.  Вернее, сама такая идея мне не навится. Либо я её не понимаю. Но если желание есть, можете создать для трёх колонок внешний блочный контейнер с фиксированной шириной. Сами колонки с заданной шириной за-float-ить. Если есть нужда, чтобы внешний контейнер "тянулся" в высоту под размер вложенных колонок, его тоже можно за-float-ить.

Автор: NaglfarNight 10.12.2007, 22:00
annsar
Если я Вас правильно поняла... вообщем возможно сделать общий див, допустим назовём его container, задать ему фиксированную ширину. А его разбит на ещё 3 дива, ширина которых задается процентами. Тогда эти три колонки будут растягиваться  зависимости от своего родителя, т.е. container.
Примерно так в html:

Код

<div class="container">
   <div class="left"></div>
   <div class="right"></div>
   <div class="main"></div>
</div>

И, допустим, так в css
Код

.container {width:780px;}
.left {width: 20%; float: left;}
.right {width: 20%; float: right;}
.main {width: 60%; float: left;}


Сама с процентами столкнулась буквально только что. Как раз разбираюсь.

Автор: NaglfarNight 10.12.2007, 22:33
Прошу прощения за повтор. Пост не отображался. Написала заново.)

annsar
Если я Вас правильно понимаю, то можно сделать так.
Создаем общий див, допустим назовём его container. Его ширина фиксрована. А в нём создаем три дива (или столько сколько Вам нужно), их ширина указывается в нужном процентном отношении. В таком случае при смене ширины container на любую другую, дивы, находящиеся в нём подстраиваются под его ширину (т.е. под ширину своего родителя)

В html такой шаблончик получается:
Код

<div class="container">
  <div class="left"></div>
  <div class="right"></div>
  <div class="main"></div>
</div>

В css, допустим так:
Код

.container {width: 780px;}
.left {width: 20%; float: left;}
.right {width: 20%; float: right ;}
.main {width: 60%; float: left;}


С процентами столкнулась буквально только что. Как раз разбираюсь. smile 

Автор: annsar 11.12.2007, 12:22
to NaglfarNight
при таком способе вроде все работает. Только я для всех колонок задаю левый флоат. Но если для одной из колонок проставить фиксированную широту, то некорректное отображение гарантировано. ну вообщем работает. спасибо.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)