Как div прижать к правому краю
Перейти к содержимому

Как div прижать к правому краю

Выравнивание по правому краю | CSS

Длинный абзац с несколькими предложениями. Он содержит текст, характеризующий помеченное флажком свойство, и изображение, которое нужно прижать к краю правой стороны.
Свойство text-align наследуется, применяется к блочным элементам.
Выравнивает все содержащиеся в них строчные элементы и текст по горизонтали. Оно не перемещает сам элемент и не передвигает блоки, не работает, если задано строчному элементу. У него есть несколько значений, в том числе right , позволяющих сдвигать содержимое вправо.
Свойство margin-left не наследуется, применяется ко всем элементам. У него есть значение auto , которое выравнивает блочный элемент по горизонтали. А именно margin-left: auto; прижимает элемент к правому краю родителя. Это положение может изменяться свойством margin-right . При margin-left: auto; и margin-right: auto; элемент размещается по центру ширины предка.
Свойство float не наследуется, применяется ко всем элементам. Оно вынимает элемент из потока и прижимает к краю левой или правой стороны родителя. Элементы и текст, расположенные в коде после float-элемента, обтекают его с противоположной стороны.
Свойство position не наследуется, применяется ко всем элементам. position: absolute; вынимает элемент из потока и располагает поверх остального содержимого. Его можно перемещать относительно границ родителя, у которого значение position отлично от static , с помощью свойств top , right , bottom , left . При direction: ltr; свойство left имеет приоритет над свойством right , кроме случаев, когда свойство left имеет значение auto .

Как div прижать к правому краю

Свойство блока float со значением right. Свойство right со значением 0.

О позиционировании блока div справа.

Позиция блока справа свойство float со значением right

Если вы используете свойство «float» со значением «right» — без дополнительных свойств, то получится блок с обтеканием.

Поставим свойство — float и положение справа –right.

float:right;/* Положение справа */

background: #fd0; /* Цвет фона */

width: 300px; /* Ширина */

Далее создадим div, присвоим ему класс, который описали сверху. И напишем в самом диве текст — Класс — sprava.

Смотрим, что мы получили:

Этот текст написан выше блока.

Далее текст, который будет написан, будет находиться ниже блока, как видим, только тот текст, что написан ниже блока див будет обтекать наш блок слева. Это дает возможность соответствующей декорации страницы, например расположение картинки, в виде превью!

И как только текст заполнит всю высоту, блока, который находится справа, то текст будет уже заполнять всю ширину родительского блока.

Div расположен справа свойство float без обтекания.

Самое простое, с моей точки зрения, поместить наш див с классом «sprava» в другой див, который будет иметь аналогичную высоту, что и класс sprava, т.е. 100px.

И добавим нашему наружному блоку «border: 1px solid;», чтобы мы его смогли увидеть!

У нас получится:

border: 1px solid;

Результат расположения блока справа:

Как видим, наш блок расположился справа, и текст, который написан ниже, и расположился ниже блока.

Div справа с помощью свойства margin-left

Создадим ещё раз новый див. С новым классом.

Родительский блок имеет ширину 740px , и поставим в свойствах «margin-left =740px».

background: #fd0; /* Цвет фона */

width: 300px; /* Ширина */

Смотрим, что получилось:

Дело в том. что мы не учли точку отсчета по умолчанию, а она располагается в верхнем левом углу. Нашего блока.

Поэтому, нам нужно отнять от 740 ширину нашего блока 300 — и поставить её в свойство «margin-left».

Как видим, наш блок справа не зашел за края родительского блока.

Div справа в крайней правой точке монитора

Создадим новый блока и новый класс:

Данный блок будет находится по горизонтали на этих словах, но никак не будет влиять на него.!

Если вы уменьшите размер окна, до менее чем 740(ширина родительского блока), то блок наедет на текст.

Когда данный блок будет наезжать на основной блок с текстом?!

Сделаем скрин, когда размер экрана меньше 1080 и поставим родительскому блоку «border», чтобы мы могли его увидеть.

Если вы читали внимательно, то должны были заметить, что цифры не бьется.

Главный блок » div » = 740px.

Прибавляем 300px — ширину нашего блока справа 740 + 300 = 1040, а на скрине 1080. где еще 40 px?

Дело в том, что у «main_text» есть дополнительные 20px отступа с каждой стороны, вот 20 + 20 — 40.

Поэтому, как только ширина окна будет меньше 1080, наш блок будет наезжать на основной блок «main_text».

Когда данный блок будет наезжать на основной блок с текстом?!

Div справа в крайней правой точке родительского блока

Когда мы рассматривали позицию блока справа с помощью «margin-left: 440px;», но если ваш родительский блок имеет резиновую ширину, то этот блок справа, будет уезжать вправо, при уменьшении основного и влево при увеличении.

Смотрим на скрине :

Div справа в крайней правой точке родительского блока

И далее следующий вариант, блок будет находиться справа, в любой ситуации.

Div справа с помощью свойства right

Возьмем данные из предыдущего блока. и поместим его в другой блок и задаем ему свойства:

Как прижать блок к правому краю?

Но блок вообще никак не хочет переместиться на другую сторону экрана((( Что делать?

  • Вопрос задан более трёх лет назад
  • 71560 просмотров

Оценить 1 комментарий

  • Facebook
  • Вконтакте
  • Twitter

  • Facebook
  • Вконтакте
  • Twitter

Включи логику.
Ты задал абсолютное позиционирование, вырвав тем самым элемент из потока.
И пытаешься задать ему обтекание.
Внимание вопрос: какие элементы его будут обтекать, если сам элемент вырван из потока?

Вывод: float для твоей задачи не подходит.

Думай дальше. Ты задал позиционирование элементу. Какие свойства задают позицию блоков?
Догадался уже, наверное — top, left, right, bottom.

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

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