Float left что это

float

Summary

CSS-свойство float указывает, что текущий элемент должен быть изъят из обычного flow (потока) и прижат к левой или правой стороне родительского элемента. Текст и inline элементы будут обтекать такой элемент.

Начальное значениеnone
Применяется квсе элементы, но не будет эффекта, если display: none
Наследуетсянет
Обработка значениякак указано
Animation typediscrete

Поскольку float подразумевает использование блочной модели, это свойство изменяет вычисляемые значения display в следующих случаях:

Syntax

Values

Formal syntax

Examples

HELLO!

How floats are positioned

As mentioned above, when an element is floated it is taken out of the normal flow of the document. It is shifted to the left or right until it touches the edge of it’s containing box or another floated element.

In the image below, there are three red squares. Two are floated left and one is floated right. Note that the second «left» red square is placed to the right of the first. Additional squares would continue to stack to the right until they filled the containing box, after which they would wrap to the next line.

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Clearing floats

In the example above, the floated elements are shorter vertically than the block of text they’re floated within. However, if the text was not long enough to wrap below the bottom of all the floats, we might see unanticipated effects. If the paragraph above, for instance, only read «Lorem ipsum dolor sit amet,» and was followed by another heading of the same style as the «Floats Example» heading, the second heading would appear between the red boxes. Most likely, we want the next heading to be aligned all the way to the left. To accomplish that, we’d need to clear the floats.

The simplest way to clear the floats in this example is to add the clear property to the new heading we want to be sure is aligned left:

However, this method only works if there are no other elements within the same block formatting context (en-US) that we do want the heading to continue to appear next to horizontally. If our H2 has siblings which are a sidebars floated to the left and right, using clear will force it to appear below both sidebars, which is probably not what we want.

If clearing floats on an element below them is not an option, another approach is to limit the block formatting context of the floats’ container. Referring to the example above again, it appears that all three red boxes are within a P element. We can set the overflow property on that P to hidden or auto to cause it to expand to contain them, but not allow them to drop out the bottom of it:

Источник

Свойство float

Свойство float в CSS занимает особенное место. До его появления расположить два блока один слева от другого можно было лишь при помощи таблиц. Но в его работе есть ряд особенностей. Поэтому его иногда не любят, но при их понимании float станет вашим верным другом и помощником.

Как работает float

При применении этого свойства происходит следующее:

Исключением являются некоторые редкие display наподобие inline-table и run-in (см. Relationships between „display“, „position“, and „float“)

Вертикальные отступы margin элементов с float не сливаются с отступами соседей, в отличие от обычных блочных элементов.

Это пока только теория. Далее мы рассмотрим происходящее на примере.

Текст с картинками

Например, вот страница о Винни-Пухе с картинками, которым поставлено свойство float :

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Её HTML-код выглядит примерно так:

Посмотрим, например, как выглядело бы начало текста без float:

При float:left – всё то же самое, только IMG смещается влево (или не смещается, если он и так у левого края), а строки – обтекают справа

Чтобы это увидеть, добавим параграфам фон и рамку, а также сделаем изображение немного прозрачным:

Блок с float

Свойство float можно поставить любому элементу, не обязательно картинке. При этом элемент станет блочным.

Посмотрим, как это работает, на конкретной задаче – сделать рамку с названием вокруг картинки с Винни.

Источник

Описание float

Свойство float прижимает элемент к левому или правому краю родителя, а близлежащий текст обходит элемент с других сторон. Такое поведение текста напоминает поток воды, обтекающий камень, поэтому элементы с float называются плавающими, обтекаемыми или поплавками.

Пример 1. Исходное положение картинки с текстом

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что этоВинни-Пух был всегда не прочь немного подкрепиться, в особенности часов в одиннадцать утра, потому что в это время завтрак уже давно окончился, а обед ещё и не думал начинаться. И, конечно, он страшно обрадовался, увидев, что Кролик достаёт чашки и тарелки.

Результат данного примера показан на рис. 1. Картинка и текст выравниваются по левому краю окна браузера, при этом первая строка текста располагается по нижнему краю изображения.

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Рис. 1. Исходное расположение картинки с текстом

Значение left у свойства float выравнивает картинку по левому краю браузера, а все остальные элементы, вроде текста, обтекают её по правой стороне (пример 2).

Пример 2. Значение left

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что этоВинни-Пух был всегда не прочь немного подкрепиться, в особенности часов в одиннадцать утра, потому что в это время завтрак уже давно окончился, а обед ещё и не думал начинаться. И, конечно, он страшно обрадовался, увидев, что Кролик достаёт чашки и тарелки.

Источник

О практических применениях свойства float

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

Пример:
Результат:

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

Но хотелось бы привести еще дополнительные практические применения

1. Какие стили написать для такой разметки

чтобы выглядело так:
Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

A если размеры ограничены:

Результат:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

микрофон упал под Дополнительные возможности:

В таком случае стоит лишь добавить

Результат:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

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

2. Как упомянуто выше, зафлоаченный элемент занимает ширину содержимого, и если нам нужно сверстать такое меню:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это
эта особенность нам поможет.

С условием, что цвет фона нужно задать элементу li:

float: left — нужен для того, чтобы ограничить ширину до содержимого.

Но не обязательно быть профессионалом верстки, чтобы заметить: если ширина ul позволяет элементам обтекать друг друга, то получится следующее:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Тогда в помощь нам приходит связка свойств float и clear. Стоит селектору ul > li прописать clear: left, и все станет на свои места.

Не все так просто со свойством clear — применение этого свойства из значением left или right приводит к очищению всего потока зафлоаченных элементов данного типа. Приведу наглядный пример:

Имеем следующую разметку:

Заметка: за задумкой, элемент с классом block3(зеленый) должен расположиться после элементов с классами block1, block2 (желтые) и начинаться с нового рядка.

В результате:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Что здесь произошло? Элемент с классом block3 (зеленый), действием правила clear: both; очистил поток, включая красный блок.

Знакомый метод очищения потока и определения высоты элементу под названием clearfix здесь не подходит.

4. Вооружившись знаниями свойства float и overflow, сверстаем такое меню:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Не будет проблемы, если использовать дополнительные селекторы. Но, к примеру, мы не знаем количества пунктов (для использования селектора соседних элементов), не имеем кроссбраузерную поддержку :first-child, :last-child, а использование каких либо выражений, тем более скриптов для IE — запрет;

В результате получаем:
Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это
Использовав отрицательные внутренние отступы для li и свойства float и overflow для ul, получаем дополнительные стили:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Как можно заметить, border-ы не на своем месте, осталось лишь поменять значения цветов левого и правого бордеров, получается такой код:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это
Конечно же, внутренние отступы уменьшились на 3px, поэтому надо их увеличить на 3px:

Получаем готовое меню:
Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что это

Я не упомянул всего, что касается специфики и практических примеров свойства float, но приведу еще некоторые ссылки на полезные статьи:

Раздел блога ImageCMS “Совершенствуемся — CSS!” в статье учебные материалы об эффективной верстке веб-страниц.

Ко всем вышеуказанным важностям хочу добавить только одно: с Днем программиста, друзья и коллеги! Легкого кодинга, двойной оплаты в восьмой степени вам и нам!

Источник

CSS свойство float определяет, как элемент должен располагаться (плавать) относительно других элементов.

CSS свойство clear определяет, какие элементы могут плавать рядом с очищенным (clear) элементом и с какой стороны.

Свойство float

Свойство float используется для позиционирования и форматирования содержимого, например когда изображение располагается слева от текста в контейнере.

Свойство float может иметь одно из следующих значений:

В простейшем случае свойство float можно использовать для обтекания текстом изображений.

В следующем примере показано, что изображение должно располагаться (плавать) от текста справа:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что этоLorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum, nisi lorem egestas odio, vitae scelerisque enim ligula venenatis dolor. Maecenas nisl est, ultrices nec congue eget, auctor vitae massa. Fusce luctus vestibulum augue ut aliquet. Mauris ante ligula, facilisis sed ornare eu, lobortis in odio. Praesent convallis urna a lacus interdum ut hendrerit risus congue. Nunc sagittis dictum nisi, sed ullamcorper ipsum dignissim ac.

Пример

В следующем примере показано, что изображение должно располагаться (плавать) от текста слева:

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что этоLorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum, nisi lorem egestas odio, vitae scelerisque enim ligula venenatis dolor. Maecenas nisl est, ultrices nec congue eget, auctor vitae massa. Fusce luctus vestibulum augue ut aliquet. Mauris ante ligula, facilisis sed ornare eu, lobortis in odio. Praesent convallis urna a lacus interdum ut hendrerit risus congue. Nunc sagittis dictum nisi, sed ullamcorper ipsum dignissim ac.

Пример

В следующем примере изображение будет отображаться именно там, где оно встречается в тексте (float: none;):

Float left что это. Смотреть фото Float left что это. Смотреть картинку Float left что это. Картинка про Float left что это. Фото Float left что этоLorem ipsum dolor sit amet, consectetur adipiscing elit. Phasellus imperdiet, nulla et dictum interdum, nisi lorem egestas odio, vitae scelerisque enim ligula venenatis dolor. Maecenas nisl est, ultrices nec congue eget, auctor vitae massa. Fusce luctus vestibulum augue ut aliquet. Mauris ante ligula, facilisis sed ornare eu, lobortis in odio. Praesent convallis urna a lacus interdum ut hendrerit risus congue. Nunc sagittis dictum nisi, sed ullamcorper ipsum dignissim ac.

Пример

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *