Jump to content
  • 0

Помогите построить небольшой макет дивами


freesoul
 Share

Question

Привет

есть небольшой код

<div id="body">
<div id="leftcol">
<div id="leftsidea"></div>
<div id="leftsideb"></div>
<div id="leftsidec"></div>
</div>
<div id="bodycenter">
text
</div>
<div id="rightside"></div>
</div>

и css

#leftcol{
width:145px;
float:left;
height:100%;
}
#body{
text-align: center;
width:1300px;
float:left;
}
#leftsidea{
text-align: left;
width:145px;
background-image: url('../images/leftside.png');
background-repeat: repeat-y;
float:left;
}
#leftsideb{
text-align: left;
width:145px;
height:34px;
background-image: url('../images/leftmid.png');
background-repeat: no-repeat;
float:left;
}
#leftsidec{
text-align: left;
height:100px;
width:145px;
background-image: url('../images/leftmid2.png');
background-repeat: no-repeat;
float:left;
}
#bodycenter{
width:1095px;
text-align: center;
background-color:#f2f4f2;
float:left;
}
#rightside{
text-align: right;
width:60px;
height:100%;
background-image: url('../images/rightside.png');
background-repeat: repeat-y;
float:left;
}

не выходит у меня никак repeat-y по вертикали

Хочу получить

div.jpg

Edited by freesoul
Link to comment
Share on other sites

12 answers to this question

Recommended Posts

  • 0

#rightside{
text-align: right;
width:60px;
height:100%;
background-image: url('../images/rightside.png');
background-repeat: repeat-y;
float:left;
}

Родителю этого контейнера не задана высота, поэтому ему не от чего брать height: 100%; Задайте высоту родителю и все заработает.

Link to comment
Share on other sites

  • 0
Высота определяется кол-вом контента в блоке #bodycenter{

Задал ему Height:100%; Но ничего не изменилось =\ как-же ж ему высоту брать

Погоди высоту задавать. Для начала сделай главный контейнер и растяни его на всю высоту, далее ему назначь уже нужный фон.

Link to comment
Share on other sites

  • 0

или я уже запутался или вы меня неправильно поняли)

Давайте попробуем упростить задачку:

<div id="body">
<div id="leftsidea">
</div>
<div id="bodycenter">
</div>
<div id="rightside"></div>
</div>

и css к нему

html{heigh:100%;}
body{heigh:100%;}
#body{
text-align: center;
width:1300px;
float:left;
}
#leftsidea{
height:100%;
width:145px;
background-image: url('../images/leftside.png');
background-repeat: repeat-y;
float:left;
}

#bodycenter{
width:1095px;
height:100%;
float:left;
}
#rightside{
width:60px;
height:100%;
background-image: url('../images/rightside.png');
background-repeat: repeat-y;
float:left;
}

Рассуждая логически:

Идет блок #body, ему ничего не нужно кроме фикс ширины

Далее левый блок #leftsidea - иммеет фон, который должен повторяться по вертикали и иметь такую же высоту как #bodycenter, в который забиваем текст, много текста, его высота растет!

И третий блок аналогичный 1-му, нужно чтобы его высота была такой, как у #bodycenter

Как же сделать, чтобы правая и левые блоки подстраивались по высоте ... кроме как не hight:100%;

Edited by freesoul
Link to comment
Share on other sites

  • 0

Чтобы работала высота 100% у родителя должна тоже быть задана высота. Хоть в лепешку расшибитесь, но это так. Вы задали 100% для <body>, но для #body высота не задана, по этому всем его потомкам не от чего брать высоту. 100% от ничего будет тоже ничего. Вот и не работает у вас нифига.

Link to comment
Share on other sites

  • 0

Не работает и все тут =(

Пашет только если в #body Явно задать высоту в px.

Не работает даже min-height ни в %, ни px

Ведь как-то ж делают, чтобы левая и правая колонки подстраивались под высоту средней.... как в table

Edited by freesoul
Link to comment
Share on other sites

  • 0
Короче. Такой макет, который вам надо получить, сделать без гемора можно только таблицей. Что я вам и советую. Прекратите извращаться и делайте таблицей.

А может быть месье предпочитает гемор? :)

Link to comment
Share on other sites

  • 0

Vlad, просто очень много людей продолжают мыслить таблицами. И очень много дизайнеров, которые так же мыслят. И дизайнеру (а вместе с ним и начальнику) нифига не докажешь, что одинаковые по высоте колонки противоречат идеологии блочной верстки.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy