Jump to content
  • 0

Выравнивание div'ов внутри div'а если есть float:left


Satiin
 Share

Question

7 answers to this question

Recommended Posts

  • 0

К слою container смысла нет применять margin:auto; width:300px; так как позиционироваться будет именно он по отношению к родителю, а нужно, чтобы позиционировались изображения в слое container. Но идея абсолютной ширины помогла. Спасибо strix.

Сделал так:

banner_88x31.gif"

banner_88x31.gif"

Link to comment
Share on other sites

  • 0

Обрати внимания!

Что бы ты мог понять что же в действительности происходит, для основного контейнера я добавил красную рамку (ну и указал картинкаи размеры, так наглядней)

CSS:

#container {

border: solid 1px red;}

#container img {width: 88px; height: 31px;}

HTML:

banner_88x31.gif"

banner_88x31.gif"

Видишь как расположены блоки в действительности? теперь убери относительное позиционироание контейнера, теперь думаю ты что-то начал понимать!

Div'ы это блочные элементы, когда ты задал выравнивание по левому краю, они выбились из общего потока, и их контейнер не может определить высоту блока, что бы исправить такой косяк, нужно просто блок контейнер ввести в этот "поток" (добавить и для него float, этот способ помоему придумал Эрик Майер)

И не приходиться создавать лишний блок :), и стили выносить надо :D

CSS:

#container {

border: solid 1px red;

position: relative;

float: left;}

#container div {float: left; padding:0px 6px;}

#container img {width: 88px; height: 31px;}

HTML:

banner_88x31.gif"

banner_88x31.gif"

Теперь внутрение дивы выравниваются по ценру относительно контейнера!

Link to comment
Share on other sites

  • 0

Очень поучающе (срочно читать хорошие книги по CSS-верстке:D, большое спасибо.

Но... Выравнивания как такового нет - контейнер растягивается по ширине контента (как, впрочем, и должен делать). Стоит только поставить ширину контейнера в 100% и картинки оказываются с левого края, где и были до этого:

CSS:

#container {

border: solid 1px red;

position: relative;

float: left;

width:100%;}

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