background — position
Фоновая картинка подчиняется этому свойству и занимает нужную позицию.
Время чтения: меньше 5 мин
Открыть/закрыть навигацию по статье
- Кратко
- Пример
- Как пишется
- Ключевые слова
- Пиксели или другие единицы измерения длины
- Проценты
- Алёна Батицкая советует
Контрибьюторы:
Обновлено 20 декабря 2021
Кратко
Скопировать ссылку «Кратко» Скопировано
При помощи свойства background — position можно управлять положением фоновой картинки внутри элемента.
Если фоновая картинка ( background — image ) меньше, чем элемент, и автоматическое повторение фона ( background — repeat ) отключено, то по умолчанию она расположится в левом верхнем углу.
Пример
Скопировать ссылку «Пример» Скопировано
div class="element">div>.element background-color: #49a16c; background-image: url("doggo.png"); background-repeat: no-repeat;>.element background-color: #49a16c; background-image: url("doggo.png"); background-repeat: no-repeat; >Как видно в примере, маленькая картинка с персонажем располагается в левом верхнем углу. Но по логике это изображение нам нужно расположить в правом нижнем углу.
Для этого мы изменим значение свойства background — position на нужное нам: 100 % 100 % или bottom right . Они равнозначны.
Позиция в процентах:
.element background-position: 100% 100%;>.element background-position: 100% 100%; >Или при помощи ключевых слов:
.element background-position: bottom right;>.element background-position: bottom right; >Как пишется
Скопировать ссылку «Как пишется» Скопировано
Ключевые слова
Скопировать ссылку «Ключевые слова» Скопировано
Доступны слова center , bottom , left , right . Их можно комбинировать, например: left center — по центру левой стороны; right bottom — правый нижний угол. Если хотим расположить картинку по центру по горизонтали и вертикали, второе слово center можно опустить.
Левый верхний угол:
.element background-position: left top;>.element background-position: left top; >.element background-position: center;>.element background-position: center; >По центру по горизонтали и у нижнего края:
.element background-position: center bottom;>.element background-position: center bottom; >Пиксели или другие единицы измерения длины
Скопировать ссылку «Пиксели или другие единицы измерения длины» Скопировано
Можно указать конкретное положение картинки в блоке.
10 px от левого края и 150 px от верхнего края:
.element background-position: 10px 150px;>.element background-position: 10px 150px; >1 rem от левого края и по центру между верхом и низом:
.element background-position: 1rem;>.element background-position: 1rem; >15 единиц ширины от левого края и 25 единиц высоты от верха:
.element background-position: 15vw 25vh;>.element background-position: 15vw 25vh; >Проценты
Скопировать ссылку «Проценты» Скопировано
Для этого свойства проценты рассчитываются необычным для CSS образом: от разницы между размером элемента и размером самой фоновой картинки. Сдвиг картинки на 50 % , то есть на половину этой разницы, центрирует её по соответствующей оси. Значение 0 % 0 % ставит картинку в левый верхний угол, а 100 % 100 % — в правый нижний.
Правый нижний угол:
.element background-position: 100% 100%;>.element background-position: 100% 100%; >.element background-position: 50% 50%;>.element background-position: 50% 50%; >Слева 15%, сверху 5%:
.element background-position: 15% 5%;>.element background-position: 15% 5%; >Если развернуть запись 15 % 5 % подробнее, то станет понятнее, как работают проценты в этом случае:
- Слева от картинки 15% свободного места, а справа — оставшиеся 85%.
- Над картинкой 5% свободного места, а под ней — оставшиеся 95%.
Подсказки
Скопировать ссылку «Подсказки» Скопировано
Свойство положения фона не наследуется.
Ключевые слова можно указывать в любом порядке. В остальных случаях первая величина — это позиция по горизонтали, а вторая, если есть — по вертикали.
Значение по умолчанию — 0% 0% (левый верхний угол).
Если указано только одно значение, то второе подставляется автоматически и равняется 50 % . То есть значение 100 % расположит картинку по центру правого края.
Если картинка больше блока, то разница их размеров, от которой отсчитываются проценты, оказывается отрицательной, поэтому они сдвигают картинку не вправо и вниз, а влево и вверх. Но 50 % 50 % и в этом случае совмещает центр картинки с центром элемента, а 100 % 100 % — правый нижний угол картинки с правым нижним углом элемента.
Если картинка занимает всё пространство блока, то background — position с ключевыми словами или в процентах не возымеет никакого действия (проценты будут отсчитываться от нуля). Но его принято указывать, чтобы в случае замены картинки новое изображение располагалось по центру блока.
Изменение положения фона можно анимировать при помощи свойства transition
На практике
Скопировать ссылку «На практике» Скопировано
Алёна Батицкая советует
Скопировать ссылку «Алёна Батицкая советует» Скопировано
В работе редко требуется располагать маленькие фоновые картинки в больших блоках. Сейчас принято делать красивые фоны на всю ширину. Но для любых фонов стоит указывать background — position : center или background — position : 50 % 50 % — в качестве подстраховки от фатальной поломки вёрстки.
Можно встретить такую запись: background — position : right 20px bottom 10px; . В этом случае отступ будет отсчитываться не от верхнего левого угла, а от указанной при помощи ключевого слова стороны. В данном случае картинка будет расположена в двадцати пикселях от правого края и в десяти пикселях от нижнего края.
Помимо перечисленных вариантов можно использовать функцию calc ( ) для указания более гибкого значения.
Выравнивание картинки по центру HTML и CSS
Довольно часто, при верстке сайтов веб-разработчик сталкивается с необходимостью выравнивания изображений по центру. И если для опытного разработчика это не является проблемой, то у начинающего это может вызвать некоторые трудности.
Навигация по статье:
- Выравнивание картинки HTML
- Выравнивание картинки по центру CCS
Я покажу вам несколько способов выравнивания картинки по центру html и css , которые вы сможете использовать в зависимости от ситуации.

Выравнивание картинки HTML
Кода вы верстаете страницу, и в каком-то единичном случае вы заранее знаете, что данное изображение должно быть по центру блока, то вы можете сделать выравнивания картинки по центру в html коде, обернув картинку в тег
с определённым классом, и используя тег , задать для этого класса css-свойство text-align:
text-align : center ; /* Выравнивания картинки по центру в html */
Или же можно сделать еще проще и добавить в тег
атрибут style:
Выравнивание картинки по центру CCS
В случае если у вас есть несколько изображений, которые нужно выровнять по центру, то лучше подойдёт выравнивание картинок по центру путём внесения правок в файл CSS-стилей страницы или сайта. Для этого нужно присвоить изображению класс и дописать показанные ниже css-свойства.
< img class = "center-pic" srcimages / mokup . jpg " alt crayon-i">img » width crayon-cn»>394 » height crayon-cn»>286 » / >
. center — pic < display : block ; margin : auto ;Этот способ выравнивания картинки css работает практически всегда. Задавать изображению класс не обязательно. Вы можете обратиться к нему через класс блока в котором оно находится. Например:
. conteiner img < display : block ; margin : auto ;
Так же можно воспользоваться альтернативным вариантом выравнивания картинки по центру, обернув изображение в абзац тегом
и, по аналогии с вариантом для HTML, задать абзадцу свойство text-align:center.
. center — pic < text - align : center ;
С помощью показанных в этой статье способов выравнивания картинок в html и css вы сможете выровнять нужное вам изображение практически в любой ситуации. В своей практике я стараюсь чаще использовать вариант с использованием text-align:center; или margin:auto, в зависимости от ситуации.
На этом я, пожалуй, закончу статью. Надеюсь, данная статья поможет вам разобраться с выравниванием картинок в html и css и вы сможете подобрать для себя наиболее удобный вариант.

Не забывайте делиться статьей в социальных сетях и оставлять комментарии, а так же заходите на мой канал на YouTube, где вы найдете много интересных видео по разработке сайтов, обзору полезных плагинов и скриптов.
Желаю вам успехов в создании своего сайта! До встречи в следующей статье!
С уважением Юлия Гусарь
Как выровнять картинки в css
Css стили или как выровнять изображение по центру экрана: разбираем что за отступы padding и margin
Приветствую всех читателей данной публикации и подписчиков моего обучающего блога. Сегодня разберем интересную и востребованную тему, связанную с css как выровнять изображение по центру.
Я в деталях расскажу, как установить вокруг картинки отступы и выровнять ее не только по горизонтали, но и по вертикали в текстовом контенте, укажу, какими инструментами веб-языков стоит пользоваться и конечно же приведу конкретные примеры. А теперь приступим к делу!
Главные инструменты для работы с изображениями
Для начала напомню, что за отображение графической информации в html отвечает тег img>. Для редактирования расположения картинок, указания способа обтекания и расстояния между другими объектами, расположенными на веб-странице, нам понадобятся знания таких css-свойств:
Начнем разбор полетов с последнего элемента.

Text-align обычно используют для выравнивания текста, однако он также предусмотрен и для форматирования расположения изображений. В своем арсенале text-align имеет такие ключевые слова, как center – центрирует объект, right и left – выравнивают по правому или левому краю соответственно, justify – выравнивает по ширине блока.
Также начиная с css3 появились такие параметры как start и end. Они функционируют почти также, как right и left, однако выравнивание происходит автоматически в зависимости от правил написания текста (справа налево или слева направо).
Очень полезным свойством является float. С его помощью можно указать как именно должна обтекаться фотография контентом. Так, при указании right выбранный элемент размещается справа, а другие объекты обтекают его с левой стороны.
При указании left думаю вы и сами догадались, что произойдет – эффект будет зеркальным.
Также можно указать none – отменить обтекание и inherit – унаследовать характеристики предка.
Еще в начале обучающего раздела о css и html я публиковал целую статью, посвященную отступам. Для лучшего понимания темы прочтите и ее.
А сейчас разберем, что же такое padding и margin, а также их отличия.

Итак, padding отвечает за расстояние внутри элемента: от контента до границы блока, а margin – за отступ от внешней границы указанного объекта до края родительского элемента или же если его нет, то до внутренней границы вкладки браузера.
Это очень гибкие элементы. Условия можно задавать в разных единица измерения как одновременно для всех сторон, так и для каждой отдельно. К тому же дописывая через дефис название стороны (например, для нижнего внутреннего отступа padding- bottom) можно добиться того же эффекта.
Глобальный примерчик
В одном примере я объединил весь теоретический материал, чтобы показать, как эффективно можно пользоваться данными свойствами.
Публикация подошла к концу. Буду рад новым подписчикам! Не жадничайте и делитесь ссылкой на мой блог с друзьями. Желаю удачи в освоении темы!
Как выровнять картинку по вертикали
Итак, у нас есть картинка и есть блок div. Как выровнять картинку по вертикали?
1. Нам не известны ни размеры картинки, ни размеры блока
Вариант 1. Картинка с абсолютным позиционированием
Height введен только чтобы расширить блок, он может быть динамическим, и картинка всегда будет по центру.
Пример:
Вариант 2. Через table-cell
Верстка как и в первом примере:
Здесь тоже высота может быть динамической. Но есть одно НО – ширину блока уже нельзя указать в 100%, должен быть задан width.
Пример:
2. Нам известна высота блока, но не известна высота картинки
Способ через line-height. Высота картинки должна быть меньше высоты блока.
Пример:
Нам известна высота картинки, но неизвестна высота блока
Способ через абсолютное позиционирование картинки
Суть этого способа заключается в добавлении картинке position: absolute, отодвигании ее сверху на 50% через свойство top, а потом добавлении отрицательного margin, равного половине высоты этой картинки. Также можно выравнивать картинку и по горизонтали (добавлением свойств top: 50% и margin-top, равного половине ширины картинки).
Верстка:Пример:
15 thoughts on “ Как выровнять картинку по вертикали ”
Можно применять и для выравнивания вложенных блоков, но у них должны быть указаны width и height.
Совершенно верно! Спасибо за дополнение
Круто, спасибо! Верстаю 2.5 года — про вариант 1 слышу в первый раз)
Рады, если смогли помочь :))
Первый вариант не работает в Firefox
Если изображение выравнивать с помощью line-height то этот line-height для блока нужно ставить на 3px меньше. Т.е. Если ваш блок имеет высоту и бордер а изображение будет на всю высоту блока то оно будет вылазить за границы блока.
не знаю почему может кто-то знает?Спасибо! Первый вариант подошел. Работает так же если высота блока меньше высоты изображения.
Кстати. На этой странице заголовок сайта поплыл http://prntscr.com/d8svwj
Спасибо, что обратили наше внимание. Скоро поправим :))
Спасибо, добрый человек!
По-моему самый простой способ выровнять изображения разного размера по вертикали — использовать flexbox.
Например, в контейнер помещается x изображений разного размера.
Свойства для контейнера:
display: flex
align-items: centerКласс ! Лишь двумя строчками.
Огромное спасибо! Действительно работает в отличии от остального
Здравствуйте! Очень полезно, все хорошо работает. А не могли бы вы подсказать, как сделать так, чтобы height в первом случае была именно динамической? Спасибо!
Варианты горизонтального выравнивания блоков и картинок по центру справа слева

Часто головной болью начинающих веб-мастеров является корректное выравнивание картинок или блоков по горизонтали и их адаптивное поведение при разных расширениях экрана.
Как выравнять картинку по горизонтали: справа, слева, по центру?
Проблема выравнивания и адаптивности изображения к любому разрешению экрана пропадает сама по себе, когда вы используете фреймворки типа Bootstrap.
В обычной практике используется несколько вариантов выравнивания элементов в один ряд по горизонтали. Наиболее часто используются методы:
— Float;
— Inline-block;
— Table-cell (устаревший после выхода HTML5).Каждый из них имеет свои недостатки и преимущества. Рассмотрим 2 варианта: Float и Inline-block.
Вариант с использованием Float
Стиль Float используется при блочной вёрстке.
Любой блочный элемент будет размещаться с новой строки не зависимо от присвоенной ему ширины. Даже если уменьшать размер блока div по ширине блоки в один ряд не встанут.Здесь на помощь придёт Float: left или right.
Он делает блочный элемент плавающим и выравнивает его по левому или правому краю основного блока. Также Float способствует обтеканию элемента текстом.Для примера, создадим четыре блока, которые нужно разместить в ряд:
Значения стиля в файле CSS:
Получает результат, который вы видите на картинках ниже.


При уменьшении экрана, когда блоки благодаря своему размеру width: 180px; перестанут умещаться в одну линию, они начнут складываться друг под друга.

Как видите блоки (судя по тексту в них) поменяли порядок размещения. Браузер обработал их сверху вниз и выровнял по правому краю, соблюдая очерёдность — сначала выравнял первый, потом второй и т.д. При работе со свойством float: right; имейте это ввиду.
Для прерывания действия свойства обтекания элементов используется конструкция: без содержимого.
В примерах выше расстояния между блоками задаются при помощи отступа margin-right.
Допустим нам необходимо разместить блоки в один ряд по центру и задать отступы между ними.В этом случае поступаем так:

На практике могут встретиться различные ситуации, но всех особенностей в одной статье не рассмотреть.
Метод «Inline-block»
Как уже говорилось, блочные и строчные элементы имеют свои недостатки и преимущества в зависимости от поставленной задачи. Возьмём только преимущества и попробуем их объединить. Для этого знакомимся со свойством display: inline-block.
Свойство display: inline-block создаёт блочно-строчный элемент, который можно расценивать как строчный, с сохранением блочных свойств. Он позволяет изменять линейные параметры, задавая отступы, поля и т.п.
Свойства блочно-строчного элемента:
— ширина и высота блока определяется автоматически, в зависимости от содержимого и присутствия отступов padding.
— ширину и высоту блока можно задать фиксировано.
— эффект свёртывания границ отсутствует.Приведу пример простого меню с картинкой и текстовой ссылкой с использованием блочно-строчного элемента.
В результате получили следующее:

Напоминаю: перед тем как работать с выравниваем картинки по горизонтали, её необходимо поместить в блок DIV.
Выравнивание изображения
Расположение картинки влияет на общий вид страницы, на восприятие текста вокруг нее. Удобство чтения текста, находящегося около картинки, сильно зависит от их взаимного расположения.
Есть множество вариантов выравнивания картинок относительно текста, и за все отвечает атрибут align элемента IMG. Он позволяет выравнивать изображения с правой, с левой стороны окна или относительно элементов строки.
У атрибута align много значений, которые позволяют установить картинку именно так, как надо, и именно там, где надо.
• left – по левому краю;
• right – по правому краю.
• top – выравнивание верхней границы картинки по самому высокому элементу строки;
• texttop – выравнивание верхней границы картинки по самому высокому элементу текста;
• middle – середина изображения выравнивается по базовой линии строки;
• absmiddle – середина изображения выравнивается по середине строки;
• baseline – выравнивание нижней границы изображения по базовой линии строки;
• bottom – аналогично baseline;
• absbottom – нижняя граница изображения выравнивается по нижней границе текущей строки.
Примечание
Базовая линия строки – это линия, на которой расположены все элементы. При этом некоторые буквы выступают за эту линию, например буква «р». Ее палочка заканчивается ниже базовой линии и будет самым нижним элементом строки. Заглавные буквы, наоборот, выступают сверху этой линии.
В листинге 4.3 приведены примеры выравнивания картинок относительно текста по вертикали.
Листинг 4.3. Выравнивание картинки по вертикали

Выравнивание по самому верхнему элементу в строке

Нижняя граница изображения выравнивается по нижней границе текущей строки

Нижняя граница изображения выравнивается по базовой линии строки

Середина изображения выравнивается по базовой линии строки

