Css размер фонового изображения: 🤷🏽‍♀️ Page not found | MDN Web Docs


15.09.1970 Facebook Twitter LinkedIn Google+ Разное


Содержание

Учебник CSS 3. Статья «Работа с фоном элемента в CSS»

В этом учебнике мы уже рассмотрели с вами такие аспекты работы с изображениями как использование свойств границ (цвет, стиль и толщина), научились задавать тень для изображений (Статья «Тень элемента в CSS»), рассмотрели, как можно создать эффект рамки, добавив задний фон и пустой промежуток между границей и изображением (Статья «Блочная и строчная модель в CSS»). Научились делать изображения плавающими (Статья «Плавающие элементы в CSS») и позиционировать их относительно краев родительского элемента, научились управлять внешними отступами между элементами, но всего этого пока не достаточно.

Для того чтобы Вы смогли создавать по настоящему красочные, яркие и уникальные сайты, вам необходимо познакомиться и изучить методы работы с задним фоном и с таким свойством как background-image, которое позволяет задать одно или несколько фоновых изображений для элемента.

Фон элемента это общий размер элемента, включая значения внутренних отступов (padding) и границ (border), но, не включая значение внешних отступов – свойство margin.

В настоящее время браузеры работают с тремя графическими форматами:

  • GIF (англ. Graphics Interchange Format — формат для обмена изображениями).
  • JPEG (англ. Joint Photographic Experts Group — название организации-разработчика).
  • PNG (англ. Portable network graphics — растровый формат хранения графической информации).

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

селектор {
background-image: url(images/main_bg.png);
}

Обращаю Ваше внимание на то, что при использовании относительного пути фоновое изображение необходимо указывать относительно адреса файла таблицы стилей, а не HTML страницы на которой предполагается использование фонового изображение.


Давайте рассмотрим пример, в котором установим задний фон, который представляет из себя три разноцветных квадрата размером 100 на 100 пикселей для элемента <body>:

<!DOCTYPE html>
<html>
<head>
	<title>Пример установки изображения в качестве фона</title>
<style> 
body {
background-image: url("main_bg.png"); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
background-color: white; /* задаем задний фон для элемента */
}
</style>
</head>
	<body>
	</body>
</html>

По умолчанию, фоновое изображение размещается в верхнем левом углу элемента и повторяется как по вертикали, так и по горизонтали

, в нашем примере это привело к тому, что элемент <body> полностью заполнился фоновым изображением.


Желательно всегда устанавливать цвет заднего фона в качестве альтернативы изображению, в этом случае, если изображение по каким-то причинам не будет загружено, то будет использован заданный Вами цвет. Запомните этот момент, мы не будем к нему возвращаться в статьях этого учебника.


Результат нашего примера:

Рис. 115 Пример установки изображения в качестве фона.

Управление повтором фонового изображения

Как мы с вами установили из примера, фоновое изображение размещается по умолчанию в верхнем левом углу элемента и повторяется по вертикали и горизонтали. Давайте научимся изменять эти предопределенные значения и для начала рассмотрим, как управлять повтором изображения, а поможет нам в этом CSS свойство background-repeat.

Это свойство имеет следующие доступные значения:

ЗначениеОписание
repeatФоновое изображение будет повторяться как по вертикали, так и по горизонтали. Это значение по умолчанию.
repeat-xФоновое изображение будет повторяться по горизонтали (по оси x).
repeat-yФоновое изображение будет повторяться по вертикали (по оси y).
no-repeatФоновое изображение не будет повторяться.

Для следующего примера используем задний фон, который представляет из себя два разноцветных квадрата размером 10 на 10 пикселей.

<!DOCTYPE html>
<html>
<head>
	<title>Пример управления повтором фонового изображения</title>
<style> 
body {
background-image: url("main_bg.png"); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
}
div {
display: inline-block; /* устанавливаем, что элементы становятся блочно-строчными (чтобы выстроились в линейку) */
background-image: url("small_bg.png"); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
width: 200px; /* устанавливаем ширину элемента */
height: 200px; /* устанавливаем высоту элемента */
border: 1px solid; /* устанваливаем сплошную границу размером 1 пиксель */
margin-right: 10px; /* устанавливаем внешние отступы справа */
text-align: center; /* выравниваем текст по центру */
line-height: 200px; /* задаем высоту строки */
background-color: azure; /* указываем цвет заднего фона*/
}
. noRepeat
{ background-repeat: no-repeat; /* фоновое изображение не будет повторяться. */ } .repeatX { background-repeat: repeat-x; /* фоновое изображение будет повторяться по горизонтали */ } .repeatY { background-repeat: repeat-y; /* фоновое изображение будет повторяться по вертикали */ } </style> </head> <body> <h2>Значение repeat для body (по умолчанию)</h2> <div class = "noRepeat">no-repeat</div> <div class = "repeatX">repeat-x</div> <div class = "repeatY">repeat-y</div> </body> </html>

По аналогии с предыдущим примером для <body> мы установили задний фон, который дублируется как по горизонтали, так и по вертикали. Кроме того, мы создали для наших блоков три класса, которые определяют как будет повторяться фоновое изображение, используя различные значения для свойства background-repeat:

  • Для первого блока мы указали, что изображение не будет повторяться (значение no-repeat), это значение чаще всего используется в работе.
  • Второй блок получил значение repeat-x, которое определяет, что фоновое изображение будет дублироваться по горизонтали.
  • Ну и в третьем блоке фон дублируется по вертикали (значение repeat-y).

Результат нашего примера:

Рис. 116 Пример управления повтором фонового изображения.

Управление позицией фонового изображения

По умолчанию, фоновое изображение позиционируется в верхнем левом углу элемента, используя CSS свойство background-position мы можем изменить это положение с использованием единиц измерения CSS, либо используя ключевые слова:

ЗначениеОписание
left top
left center
left bottom
right top
right center
right bottom
center top
center center
center bottom
Задает положение изображения. Первое значение-горизонтальное положение, а второе значение вертикальное. Если вы указываете только одно ключевое слово, другое значение будет «center»
x% y%Задает положение изображения.
Первое значение — горизонтальное положение, а второе значение вертикальное. Левый верхний угол имеет 0% 0% (это значение по умолчанию). В правом нижнем углу 100% 100%. Если указано только одно значение, то другое значение будет 50%.
x yЗадает положение изображения. Первое значение — горизонтальное положение, а второе значение вертикальное. Левый верхний угол имеет 0 0. Значения могут быть в пикселях, или других единицах измерения CSS. Если указано только одно значение, то другое значение будет 50%. Вы можете совместно использовать проценты и единицы измерения.

Рассмотрим пример использования этого свойства:

<!DOCTYPE html>
<html>
<head>
	<title>Пример позиционирования фонового изображения</title>
<style> 
div {
display: inline-block; /* устанавливаем, что элементы становятся блочно-строчными (чтобы выстроились в линейку) */
background-image: url("smile_bg.
png"); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */ background-repeat: no-repeat; /**/ width: 100px; /* устанавливаем ширину элемента */ height: 100px; /* устанавливаем высоту элемента */ border: 1px solid; /* устанваливаем сплошную границу размером 1 пиксель */ margin: 10px; /* устанавливаем внешние отступы со всех сторон */ text-align: center; /* выравниваем текст по центру */ line-height: 60px; /* указываем высоту строки */ background-color: azure; /* задаем цвет заднего фона */ } .leftTop {background-position: left top;} /* задаем позицию ключевыми словами */ .leftCenter {background-position: left center;} /* задаем позицию ключевыми словами */ .leftBottom {background-position: left bottom;} /* задаем позицию ключевыми словами */ .rightTop {background-position: right top;} /* задаем позицию ключевыми словами */
.rightCenter
{background-position: right center;} /* задаем позицию ключевыми словами */ .rightBottom {background-position: right bottom;} /* задаем позицию ключевыми словами */ . centerTop {background-position: center top;} /* задаем позицию ключевыми словами */ .centerCenter {background-position: center center;} /* задаем позицию ключевыми словами */ .centerBottom {background-position: center bottom;} /* задаем позицию ключевыми словами */ .userPosition {background-position: 20px 75%;} /* задаем позицию по горизонтали в пикселях, а по вертикали в процентах */ </style> </head> <body> <div class = "leftTop">left top</div> <div class = "leftCenter">left center</div> <div class = "leftBottom">left bottom</div> <div class = "rightTop">right top</div> <div class = "rightCenter">right center</div> <div class = "rightBottom">right bottom</div> <div class = "centerTop">center top</div> <div class = "centerCenter">center center</div> <div class = "centerBottom">center bottom</div> <div class = "userPosition">20px 75%</div> </body> </html>

В данном примере, мы создали 10 блоков с различными классами, в которых заданы различные значения, связанные с позиционированием фоновых изображений. Для первых девяти блоков были использованы всевозможные ключевые слова, а для последнего блока было задано значение для горизонтального позиционирования в пикселях, а для вертикального в процентах.

Результат нашего примера:

Рис. 117 Пример позиционирования фонового изображения.

Фиксированный задний фон

Когда вы прокручиваете содержимое страницы фоновое изображение, как правило, прокручивается вместе с содержимым. Это значение используется по умолчанию и подходит для большинства задач, но средствами CSS вы можете изменить такое поведение заднего фона, например, зафиксировав его.

Давайте с Вами рассмотрим, как с помощью свойства background-attachment сделать «параллакс» эффект.

<!DOCTYPE html>
<html>
<head>
	<title>Пример фиксированного фонового изображения</title>
<style> 
div {
height: 600px; /* устанавливаем высоту элемента */
}
.primerFixed {
background-image: url('nich. jpg'); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
background-attachment: fixed; /* указываем, что задний фон будет зафиксирован */
background-position: center; /* центрируем задний фон */
background-repeat: repeat-x; /* фоновое изображение будет повторяться по горизонтали */
}
</style>
</head>
<body>
	<div></div>
	<div class = "primerFixed"></div>
	<div></div>
</body>
</html>

В данном примере для всех элементов <div> мы установили высоту равную 600px и разместили три таких блока на странице. Для среднего блока мы создали класс .primerFixed, который задает для элемента фиксированный задний фон элемента, центрирует его и тиражирует по горизонтали (ось x). Для демонстрации эффекта «параллакс» откройте пример в отдельном окне браузера и прокрутите страницу вниз.

Результат нашего примера:

Рис. 118 Пример фиксированного фонового изображения.

Свойства CSS 3 для работы с фоновыми изображениями

Настало время углубить свои знания в работе с задним фоном элементов и познакомиться с новыми свойствами CSS, которые были введены в стандарте CSS 3.

И первое CSS свойство, которое мы рассмотрим — background-origin, оно определяет как позиционируется фоновое изображение, или изображения по отношению к границе, внутреннему отступу и содержимому элемента.

Возможные значения этого свойства:

ЗначениеОписание
padding-boxФоновое изображение позиционируется от верхнего левого угла элемента (изображение не заходит под границу элемента с этих сторон). Это значение по умолчанию.
border-boxФоновое изображение позиционируется от верхнего левого угла элемента (изображение заходит под границу элемента).
content-boxФоновое изображение позиционируется от верхнего левого угла содержимого элемента.

Рассмотрим применение этого свойства:

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования свойства background-origin</title>
<style> 
div {
width: 10em; /* устанавливаем ширину элемента */
height: 10em; /* устанавливаем высоту элемента */
border: 5px dashed orange; /* устанавливает пунктирную границу размером 5px оранжевого цвета */
background-image: url(manul.jpg); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
background-repeat: no-repeat; /* указываем, что фоновое изображение не будет повторяться */
display: inline-block; /* устанавливаем, что элементы становятся блочно-строчными (чтобы выстроились в линейку) */
margin-right: 15px; /* устанавливаем величину внешнего отступа от правого края элемента */
padding: 15px; /* устанавливаем величину внутреннего отступа для всех сторон элемента */
color: yellow; /* устанавливаем цвет шрифта желтый */
}
.test {background-origin: padding-box;}  /* устанавливаем, что фоновое изображение позиционируется от верхнего левого угла элемента (изображение не заходит под границу элемента с этих сторон) */
. test2 {background-origin: border-box;}  /* устанавливаем, что фоновое изображение позиционируется от верхнего левого угла элемента (изображение заходит под границу элемента) */
.test3 {background-origin: content-box;}  /* устанавливаем, что фоновое изображение позиционируется от верхнего левого угла содержимого элемента */
</style>
</head>
<body>
	<div class = "test">padding-box</div>
	<div class = "test2">border-box</div>
	<div class = "test3">content-box</div>
</body>
</html>

В данном примере мы разместили три блока, задали для них задний фон в виде изображения и указали для них различные значения свойства background-origin:

  • Первый блок (padding-box) — фоновое изображение позиционируется от верхнего левого угла элемента (изображение не заходит под границу элемента с этих сторон). Это значение по умолчанию.
  • Второй блок (border-box) — фоновое изображение позиционируется от верхнего левого угла элемента (изображение заходит под границу элемента со всех сторон).
  • Третий блок (content-box) — фоновое изображение позиционируется от верхнего левого угла содержимого элемента (изображение не заходит под границу элемента с этих сторон).

Результат нашего примера:

Рис. 119 Пример использования свойства background-origin.

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

У Вас может возникнуть вопрос: — А в чем собственно заключается разница между свойством background-origin и background-clip?


Разница заключается в том, что свойство background-clip в отличие от background-origin обрезает ту часть фона, которая выходит из указанных рамок. Свойство background-origin лишь определяет, как позиционируется фоновое изображение.


В таблице представлены возможные значения этого свойства:

ЗначениеОписание
border-boxФон элемента занимает все пространство (включая границы элемента). Это значение по умолчанию.
padding-boxФон элемента занимает все пространство (не включая границ элемента).
content-boxФон элемента занимает все содержимое элемента (если у элемента установлены значения padding (внутренние отступы), то это пространство не будет окрашено).

Давайте рассмотрим следующий пример:

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования свойства background-clip</title>
<style> 
div {
width: 10em; /* устанавливаем ширину элемента */
height: 9em; /* устанавливаем высоту элемента */
background-image: url(medved.jpg); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
border: 5px dashed yellow; /* устанавливает пунктирную границу размером 5px черного цвета */
display: inline-block; /* устанавливаем, что элементы становятся блочно-строчными (чтобы выстроились в линейку) */
margin-right: 10px; /* устанавливаем величину внешнего отступа от правого края элемента */
padding: 15px; /* устанавливаем величину внутреннего отступа для всех сторон элемента */
}
. test {background-clip: border-box;}  /* устанавливаем, что фон элемента занимает все пространство (включая границы элемента) */
.test2 {background-clip: padding-box;}  /* устанавливаем, что фон элемента занимает все пространство (не включая границы элемента) */
.test3 {background-clip: content-box;}  /* устанавливаем, что фон элемента занимает все содержимое элемента */
</style>
</head>
<body>
	<div class = "test">border-box</div>
	<div class = "test2">padding-box</div>
	<div class = "test3">content-box</div>
</body>
</html>

В этом примере мы разместили три блока, установили для них задний фон в виде изображения и указали различные значения свойства background-clip:

  • Первый блок (padding-box) — фон элемента занимает все пространство. Это значение по умолчанию.
  • Второй блок (border-box) — фон элемента занимает все пространство (не включая границы элемента).
  • Третий блок (content-box) — фон элемента занимает все содержимое элемента.

Результат нашего примера:

Рис. 120 Пример использования свойства background-clip.

Как вы могли заметить свойства background-origin и background-clip, имеет смысл применять только тогда, когда у элемента есть внутренние отступы, либо границы.

На очереди следующее свойство, которое позволит нам в полной мере управлять задним фоном элемента по своему усмотрению — это свойство background-size, оно имеет широкое применение в современной верстке сайтов, так как позволяет управлять размером фонового изображения.

Установить размер заднего фона допускается с использованием единиц измерения CSS, процентов, либо ключевых слов:

ЗначениеОписание
autoФоновое изображение содержит свою ширину и высоту. Это значение по умолчанию.
lengthУстанавливает ширину и высоту фонового изображения. Первое значение устанавливает ширину, второе значение задает высоту. Если указано только одно значение, то для второго устанавливается значение auto.
%Устанавливает ширину и высоту фонового изображения в процентах от родительского элемента. Первое значение устанавливает ширину, второе значение задает высоту. Если указано только одно значение, то для второго устанавливается значение auto.
coverМасштабирует фоновое изображение под размеры элемента. Некоторые части фонового изображения могут быть скрыты из поля зрения.
containМасштабирует фоновое изображение, чтобы оно целиком поместилось внутри элемента.

Рассмотрим применение этого свойства:

<!DOCTYPE html>
<html>
<head>
	<title>Пример масштабирования фоновых изображений</title>
<style> 
div {
width: 8em; /* устанавливаем ширину элемента */
height: 8em; /* устанавливаем высоту элемента */
border: 3px solid orange; /* устанваливаем сплошную границу размером 3 пикселя оранжевого цвета */
background-image: url(manul. jpg); /* указываем путь к файлу изображения, которое будет использоваться как задний фон */
background-repeat: no-repeat; /* указываем, что фоновое изображение не будет повторяться */
display: inline-block; /* устанавливаем, что элементы становятся блочно-строчными (чтобы выстроились в линейку) */
margin-right: 15px; /* устанавливаем внешний отступ с правой стороны */	
margin-bottom: 15px; /* устанавливаем внешний отступ с нижней стороны */	
color: yellow; /* устанавливаем цвет элемента */
}
.test {background-size: auto;} /* фоновое изображение содержит свою ширину и высоту */
.test2 {background-size: 100px 100px;} /* устанавливаем ширину и высоту фонового изображения в пикселях */
.test3 {background-size: 70% 70%;} /* устанавливаем ширину и высоту фонового изображения в процентах от родительского элемента */
.test4 {background-size: cover;} /* масштабируем фоновое изображение под размеры элемента */
.test5 {background-size: contain;} /* масштабируем фоновое изображение, чтобы оно целиком поместилось внутри элемента */
</style>
</head>
	<body>
		<div class = "test">auto</div>
		<div class = "test2">100px 100px</div>
		<div class = "test3">70% 70%</div><br>
		<div class = "test4">cover</div>
		<div class = "test5">contain</div>
	</body>
</html>

В данном примере мы разместили пять блоков, задали для них задний фон в виде изображения и указали для них различные значения свойства background-size:

  • Первый блок (auto) — фоновое изображение содержит свою ширину и высоту. Это значение по умолчанию.
  • Второй блок (100px 100px) — первое значение устанавливает ширину, второе значение задает высоту в пикселях.
  • Третий блок (70% 70%) — первое значение устанавливает ширину, второе значение задает высоту в процентах.
  • Четвертый блок (cover) – масштабирует фоновое изображение под размеры элемента (некоторые части фонового изображения скрываются из поля зрения).
  • Пятый блок (contain) – масштабирует фоновое изображение, чтобы оно целиком поместилось внутри элемента.

Результат нашего примера:

Рис. 121 Пример масштабирования фоновых изображений.

Универсальное свойство background

Мы с Вами рассмотрели все свойства, которые предназначены для работы с фоновыми изображениями. В большинстве случаев вводить длинные названия рассмотренных выше свойств непродуктивно, но это не значит, что мы зря потратили на это время — без понимания как они работают по отдельности, вы не сможете грамотно их применять в одном объявлении.

Существует более простой метод задать значения всех свойств для работы с задним фоном в одном объявлении, используя универсальное свойство background.

Свойство background имеет следующий синтаксис:

background: "color image position/size repeat origin clip attachment;

Где значения соответствуют вышерассмотренным нами свойствам:

Давайте рассмотрим пример использования универсального свойства background:

<!DOCTYPE html>
<html>
<head>
	<title>Пример использования универсального свойства background</title>
<style> 
html, body {
height: 100%; /* устанавливаем высоту элементов */
width: 100%; /* устанавливаем ширину элементов */
margin: 0; /* убираем внешние отступы элемента */
padding: 0; /* убираем внутренние отступы элемента */
}
header {
width: 100%; /* устанавливаем ширину элемента */
min-height: 34%; /* устанавливаем минимальную высоту элемента */
background: white url('cat_g. jpg') bottom/cover no-repeat; /* указываем цвет заднего фона, фоновое изображение, позицию/масштабируем под размеры элемента, фон не повторяется */
}
.primer2 {
width: 100%; /* устанавливаем ширину элемента */
min-height: 66%; /* устанавливаем минимальную высоту элемента */
background: url('lis.png') top/contain no-repeat, url('cat_g.jpg') bottom/cover no-repeat; 
/* Обратите внимание, что значения для различных изображений указываются через запятую */
/* Путь к изображению 1 позиция/масштаб повтор, Путь к изображению 2  позиция/масштаб повтор */
}
</style>
</head>
	<body>
		<header></header>
		<div class = "primer2"></div>
	</body>
</html>

И так, что мы сделали в этом примере:

  • Мы установили для элементов <html> и <body> высоту 100%, убрали внутренние и внешние отступы.
  • Для элемента <header> задали минимальную высоту равную 34% от родительского элемента, ширину установили 100%. В качестве заднего фона установили изображение — url(‘cat_g. jpg’), позиционировали его по низу и масштабировали фоновое изображение под размеры элемента (center / contain — background-position / background-size). Без косой черты, как и без позиции фонового изображения работать не будет.
  • Для элемента <div> с классом .primer2 задали минимальную высоту равную 66% от родительского элемента, ширину установили 100%. В качестве заднего фона установили два различных изображения, позиционировали их по центру (center) и масштабировали их (первое изображение полностью помещается — значение contain, второе изображение масштабируется под размеры элемента cover ).

Результат нашей работы:

Рис. 122 Пример использования универсального свойства background.

Обращаю Ваше внимание на то, что установка нескольких фоновых изображений в качестве заднего фона для одного элемента выполнена для демонстрации возможностей CSS. В большинстве случаев проще установить один задний фон для одного элемента, а уже этот элемент настроить и позиционировать в документе как вам необходимо. Подробное изучение позиционирования элементов будет освещено далее в учебнике в статье «Позиционирование элементов в CSS».


Вопросы и задачи по теме

Перед тем как перейти к изучению следующей темы пройдите практическое задание:

  • Для выполнения задания вам понадобится скачать архив и скопировать содержимое архива (HTML файл и три изображения) в любую папку на вашем жестком диске:

  • Используя полученные знания составьте следующий документ (внимательно изучите страницу перед выполнением):

    Практическое задание № 28.

    Подсказка: для того, чтобы отцентровать содержимое, необходимо указать значение auto для внешних отступов слева и справа, обратите внимание, что в примере использована тень для блоков.

    Если у Вас возникают трудности при выполнении практического задания, Вы всегда можете открыть пример в отдельном окне и проинспектировать страницу, чтобы понять какой код CSS был использован.


© 2016-2021 Денис Большаков, замечания и предложения по работе сайта Вы можете направить по адресу basicweb. [email protected]

webkit-background-size — свойство css :: руководство cssdot.ru

Свойство -webkit-background-size позволяет указывать размеры фонового изображения, которые могут быть заданы в абсолютных величинах (cm, mm, in и т.д.), относительных (px, em и т.д.), или в процентах, по отношению к ширине и высоте элемента контейнера. Масштабировать фоновое изображение возможно как с сохранением исходных пропорций, так и без них.

Допустимые значения

  • length{1,2} — задает размер фонового изображения в абсолютных величинах (cm, mm, in и т.д.) или относительных (px, em и т.д.). Если задано только одно значение, то второе вычисляется автоматически исходя из пропорций картинки.
  • percentage{1,2} — задает размер фонового изображения в процентах от ширины и/или высоты элемента контейнера. Если задано только одно значение, то второе вычисляется автоматически исходя из пропорций картинки.
  • auto{1,2} — задает размер фонового изображения равным исходному, в случае, если указаны обе величины auto, или просто auto; а если указан только для одной стороны картинки (25% auto), то размер вычисляется исходя из пропорций картинки.
  • cover — масштабирует картинку с сохранением пропорций по меньшей стороне, то есть так, чтобы фон с избытком покрывал блок-контейнер.
  • contain — масштабирует картинку с сохранением пропорций по большей стороне, то есть так, чтобы блок-контейнер с избытком покрывал фон.

Примечания

Chrome 1-3, Safari 3-4

Свойство -webkit-background-size в движке WebKit изначально было реализовано в рамках черновика спецификации CSS3, в котором отсутствовали ключевые слова contain и cover, а так же предполагалось, что если задан размер фоновой картинки с использованием только одного параметра, то второй параметр считается, не пропорционально размерам картинки, а равен первому.

Свойство -webkit-background-size относится к спецификации CSS, применяется к всем элементам, и действует на всех визуальные носителях, его значение не наследуется от родительского элемента в иерархии документа, Является расширением движка WebKit (браузеры Chrome и Safari), и не совместимо с другими браузерами.

Смотри также:

  • background-size — Размер фонового изображения, или его масштаб относительно элемента-контейнера.
  • -o-background-size — Размер фонового изображения, или его масштаб относительно элемента-контейнера.
  • -moz-background-size — Размер фонового изображения, или его масштаб относительно элемента-контейнера.

Краткое описание

Размер фонового изображения, или его масштаб относительно элемента-контейнера.

Синтаксис:

[ <length> | <percentage> | auto ]{1,2} | cover | contain [, [ <length> | <percentage> | auto ]{1,2} | cover | contain]*

Применяется к:

всем элементам

Наследование:
не наследуется
Тип носителя:

визуальные

Объектная модель документа (DOM):

[элемент]. style[‘-webkit-background-size’]


Кроссбраузерная совместимость

Internet Explorer
не поддерживается
Firefox
не поддерживается
Chrome
1.02.03.04.15.06.07.08.09.010.011.012.013.014.015.016.017.018.019.020.0
+/-+/-+/-+++++++++++++++++
Safari
1.01.11.21.32.03.03.24.05.0
+/-+/-+
Opera
не поддерживается

Как установить размер фонового изображения с помощью CSS?

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

Свойство CSS background-size можно использовать для установки размера фонового изображения; используйте значения свойств height и width, чтобы установить размер фонового изображения.

грамматика:

background-size: width height;

Примечание:

● Если первое значение не указано, изображение принимает исходную ширину.

● Если второе значение не указано, изображение примет исходную высоту.

Пример 1: background-size устанавливает значения ширины и высоты для установки размера фонового изображения.

<!DOCTYPE html>  
<html>  
    <head>  
        <title> Установить размер фонового изображения </title> 
        <style> 
            #myDiv1 { 
                height: 200px; 
                width: 400px; 
                background:url("1.jpg"); 
                background-size: 400px 200px; 
                  
            }
            #myDiv2 { 
                height: 337px; 
                width: 600px; 
                background:url("1. jpg"); 
                background-size: 600px 337px; 
                  
            } 
        </style> 
    </head> 
      
    <body>  
        <div id= "myDiv1"></div>
        <div id= "myDiv2"></div>
    </body>  
</html>

Изображение эффекта:

Пример 2. Установите размер фона в процентах

<!DOCTYPE html>  
<html>  
    <head>  
                 <title> Установить размер фонового изображения </title>
        <style> 
            #myDiv1 { 
                height: 200px; 
                width: 400px; 
                background:url("1.jpg"); 
                background-size: 70%; 
                background-repeat: no-repeat;
                  
            }
            #myDiv2 { 
                height: 400px; 
                width: 600px; 
                background:url("1.jpg"); 
                background-size: 70%; 
                background-repeat: no-repeat;
                  
            } 
        </style> 
    </head> 
      
    <body>  
        <div id= "myDiv1"></div>
        <div id= "myDiv2"></div>
    </body>  
</html>

Изображение эффекта:

Рекомендуемая литература:

php сервер

php5 скачать

Layui Framework

Подробно о свойстве CSS Background

 

Каждый элемент в DOM-дереве напоминает прямоугольник, который имеет фоновый слой, он может быть либо полностью прозрачным, либо цветным, либо содержать изображение. Этот фоновый слой находится под контролем 8 свойств CSS (плюс 1-го сокращённого свойства).

background-color

Свойство background-color задает цвет фона для элемента. Это значение может быть любым принятым значением цвета, или ключевым словом transparent.

.left { background-color: #ffdb3a; }
.middle { background-color: #67b3dd; }
.right { background-color: transparent; }

Цвет фона рисуется в области блочной модели, указанной в свойстве background-clip. Если также определяются какие-либо фоновые изображения, цветной слой распологается за ними. В отличие от слоев изображений, которых может быть несколько, цветной слой может быть только один для элемента.

background-image

Свойство background-image определяет фоновое изображение (или изображения) для элемента. Это значение обычно представляет собой URL к изображению, определенному в url() нотации. Также может быть использовано значение none, которое будет учитываться в качестве слоя, но пустого.

.left { background-image: url(‘ire.png’); }
.right { background-image: none; }

Мы также можем указать несколько фоновых изображений, отделенных друг от друга запятой. Каждое последующее изображение будет помещается за предыдущим на Z-оси.

.middle {
  background-image: url(‘khaled.png’), url(‘ire.png’);

  /* Other styles */
  background-repeat: no-repeat;
  background-size: 100px;
}

background-repeat

Свойство background-repeat управляет тем как фоновое изображение заполняет пространство, после того как установлен его размер (при помощи свойства background-size (см. ниже)) и расположение (при помощи свойства background-position (см. ниже)).

Значение этого свойства может быть одним из следующих: repeat-x, repeat-y, repeat, space, round, no-repeat. Кроме первых двух (repeat-x и repeat-y), другие значения могут быть определены или один раз, для оси х и оси у, или для каждой оси по отдельности.

.top-outer-left { background-repeat: repeat-x; }
.top-inner-left { background-repeat: repeat-y; }
.top-inner-right { background-repeat: repeat; }
.top-outer-right { background-repeat: space; }

.bottom-outer-left { background-repeat: round; }
.bottom-inner-left { background-repeat: no-repeat; }
.bottom-inner-right { background-repeat: space repeat; }
.bottom-outer-right { background-repeat: round space; }

background-size

Свойство background-size определяет размер фонового изображения. Это значение может содержать ключевое слово, длину или процент.

Ключевые слова доступные для этого свойства contain и cover. Ключевое слово contain будет масштабировать изображение с сохранением пропорций, до тех пор пока изображение целиком сможет поместиться в пределах области. cover будет масштабировать изображение до тех пор пока его высота или ширина сможет поместиться в пределах области.

. left {
  background-size: contain;
  background-image: url(‘ire.png’);
  background-repeat: no-repeat;
}
.right { background-size: cover; /*Остальные стили такие же как для класса as .left */ }

При указании размеров в единицах измерения или процентах, мы можем определить и ширину, и высоту фонового изображения. Значения в процентах вычисляются по отношению к размеру элемента.

.left { background-size: 50px; /*Остальные стили такие же как для класса .left */ }
.right { background-size: 50% 80%; /*Остальные стили такие же как для класса .left */ }

background-attachment

Свойство background-attachment управляет тем, как фоновое изображение ведет себя при прокручивании страницы, относительно видимой области экрана и элемента. Оно имеет три возможных значения.

Ключевое слово fixed означает, что фоновое изображение фиксируется в видимой области экрана и не двигается, даже когда пользователь прокручивает прокручивает окна. local означает, что фон должен быть закреплен в своем положении в элементе. Если элемент имеет прокрутку и фоновое изображение позиционируется сверху, то при прокрутке элемента вниз, фоновое изображение останется на месте, вне области видимости. И, наконец, scroll означает, что фоновое изображение является фиксированным и не будет прокручиваеться вместе с содержанием элемента.

.left {
  background-attachment: fixed;
  background-size: 50%;
  background-image: url(‘ire.png’);
  background-repeat: no-repeat;
  overflow: scroll;
}
.middle { background-attachment: local; /* Остальные стили такие же как для класса .left */ }
.right { background-attachment: scroll; /*Остальные стили такие же как для класса .left */ }

background-position

Это свойство, в сочетании со свойством background-origin, определяет, где должно быть начальное положение фонового изображения. Это значение может быть либо ключевым словом, либо длиной, либо процентом, и мы можем указать положение вдоль оси х и оси у.

Доступны следующие ключевые слова top, right, bottom, left, и center. Мы можем использовать эти ключевые слова в любой комбинации, и если указано только одно ключевое слово, то предполагается что другое равно center.

.top-left {
  background-position: top;
  background-size: 50%;
  background-image: url(‘ire.png’);
  background-repeat: no-repeat;
}
.top-middle { background-position: right;  /*Остальные стили такие же как для класса .top-left */ }
.top-right { background-position: bottom;  /*Остальные стили такие же как для класса .top-left */ }
.bottom-left { background-position: left;  /*Остальные стили такие же как для класса .top-left */ }
.bottom-right { background-position: center;  /*Остальные стили такие же как для класса .top-left */ }

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

.left { background-position: 20px 70px; /*Остальные стили такие же как для класса .top-left */ }
.right { background-position: 50%; /*Остальные стили такие же как для класса .top-left */ }

background-origin

Свойство background-origin определяет область позиционирования фонового изображения.

Доступные значения следующие: border-box — фон позиционируется относительно границы, при этом линия границы может перекрывать изображение, padding-box  — фон позиционируется относительно края элемента с учетом толщины границы, и content-box — фон позиционируется относительно содержимого элемента.

.left {
  background-origin: border-box;
  background-size: 50%;
  background-image: url(‘ire.png’);
  background-repeat: no-repeat;
  background-position: top left;
  border: 10px dotted black;
  padding: 20px;
}
.middle { background-origin: padding-box;  /*Остальные стили такие же как для класса . left*/ }
.right { background-origin: content-box;  /*Остальные стили такие же как для класса .left*/ }

background-clip

Свойство background-clip определяет, как цвет фона или фоновая картинка должна выводиться под границами. Эффект заметен при прозрачных или пунктирных границах.

.left{
  background-clip: border-box;
  background-size: 50%;
  background-color: #ffdb3a;
 background-repeat: no-repeat;
  background-position: top left;
  border: 10px dotted black;
  padding: 20px;
}
.middle { background-clip: padding-box;  /*Остальные стили такие же как для класса .left*/ }
.right { background-clip: content-box;  /*Остальные стили такие же как для класса .left*/ }

background

И, наконец, свойство background является обобщающим для других свойств фона. Порядок подсвойств не имеет значения, так как типы данных для каждого свойства различны. Тем не менее, для background-origin и background-clip, если указано только одно значение, оно используется для обоих свойств. Если два, первое устанавливается для свойства background-origin.

Перевод статьи с https://bitsofco.de/


Если у Вас возникли вопросы, то для скорейшего получения ответа рекомендуем воспользоваться нашим форумом

Как изменить размер фоновых изображений с помощью CSS3

В CSS2.1 фоновые изображения, примененные к контейнеру, сохранили свои фиксированные размеры. К счастью, CSS3 представляет свойство background-size , которое позволяет растягивать или сжимать фон. Он идеально подходит, если вы создаете шаблон с помощью методов адаптивного веб-дизайна.

Есть несколько способов определить размеры размеров — просмотреть демонстрационную страницу CSS3 background-size .

Абсолютное изменение размера

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

  размер фона: ширина высота;  

По умолчанию для ширины и высоты установлено значение авто , при котором сохраняются исходные размеры изображения.

Мы можем изменить размер изображения до нового размера, используя абсолютные измерения, такие как px, em, cm и т. Д. Соотношение сторон будет изменено при необходимости, поэтому, если наше фоновое изображение имеет размер 200 × 200 пикселей, следующий код сохраняет эту высоту, но вдвое меньше ширины:

  размер фона: 100 пикселей 200 пикселей;  

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

.
  размер фона: 100 пикселей;

размер фона: 100 пикселей автоматически;  

Этот код масштабирует наше изображение с 200 × 200 до 100 × 100 пикселей.

Относительное изменение размера с использованием процентов

Если используется процент, размер основан на содержащем элементе — НЕ размер изображения, например

  размер фона: 50% авто;  

Таким образом, ширина фонового изображения зависит от размера его контейнера. Если ширина нашего контейнера составляет 500 пикселей, размер нашего изображения изменяется до 250 × 250.

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

Масштабирование до максимального размера

Свойство background-size также принимает ключевое слово contain . Это масштабирует изображение по размеру контейнера. Другими словами, изображение будет пропорционально увеличиваться или уменьшаться, но ширина и высота не будут превышать размеры контейнера:

  размер фона: содержать;  

Заполнение фона

background-size также принимает ключевое слово cover .Изображение масштабируется по размеру всего контейнера, но, если оно имеет другое соотношение сторон, изображение будет обрезано:

  размер фона: обложка;  

Размер нескольких фонов

Можно изменить размер нескольких фонов с помощью списка значений, разделенных запятыми, которые применяются в том же порядке, например

  фон:
url ("Sheep. png") 60% 90% без повтора,
url ("Sheep.png") 40% 50% без повтора,
url ("Sheep.png") 10% 20% no-repeat # 393;
размер фона: 240 пикселей 210 ​​пикселей, авто, 150 пикселей;  

Совместимость с браузером

Последние версии всех браузеров поддерживают background-size без префикса.

IE8 и ниже не поддерживают свойство. Вы можете использовать фильтр IE для имитации содержания и покрытия, но невозможно изменить размер фоновых изображений, не прибегая к уловкам, таким как использование реальных img за другими элементами. Это грязно; Я рекомендую изящную деградацию.

Сокращенное обозначение

В спецификации W3C CSS Backgrounds and Borders Module Level 3 указано, что background-size может быть определен после background-position в сокращенной нотации background .Ни один из браузеров не поддерживает эту опцию, поэтому на данный момент background-size необходимо определить как отдельное свойство.

Просмотр демонстрационной страницы размера фона CSS3…

Поднимите свои навыки CSS на новый уровень с помощью нашей книги «Мастер CSS, 2-е издание» Тиффани Б. Браун, в которой рассматриваются CSS-анимации, переходы, преобразования и многое другое.

Пропорциональное изменение размера изображений с сохранением соотношения сторон • PQINA

Иногда изображения слишком большие для отображения на веб-странице.Чтобы это исправить, нам не нужен JavaScript. Мы можем пропорционально изменять размер изображений с помощью тегов изображений HTML или стилей фона CSS. Давайте посмотрим на различные варианты изменения размера изображений, при этом сохраняя их соотношение сторон под контролем.

Наш первый выбор — установить только одно свойство размера: ширина или высота , браузер автоматически рассчитает размер другого края.

Представьте, что у нас есть изображение кошки с соотношением сторон 4: 3 , другими словами, его размеры 4032 × 3024 , это много кошки.

Если мы хотим, чтобы он был немного меньше, мы можем установить ширину на 240 , тогда браузер автоматически рассчитает высоту, равную 180 .

    

Есть нюанс. Изображения доступны не сразу.

Браузер отобразит страницу, дождется загрузки источника изображения, а затем обновит высоту элемента изображения. Это, скорее всего, приведет к тому, что браузер дважды отобразит страницу, потому что после обновления высоты изображения все элементы под изображением сдвигаются вниз.

Это плохие новости для производительности вашей страницы.

Лучше всего установить желаемый размер, чтобы браузер мог зарезервировать место.

    

Но что, если мы не знаем соотношение сторон изображения и получаем квадратное изображение кошки? Разве нашу кошку не раздавят? Да-да, бедный кот.

Но не бойтесь, мы можем исправить это с помощью CSS.

  img {
  соответствие объекта: содержать;
}  

Pass cover вместо содержит , чтобы указать браузеру заполнить весь тег изображения кошачьими пикселями.

  img {
  объект подходит: крышка;
}  

Что, если наше изображение нужно ограничить шириной родительского элемента? В этой ситуации мы можем использовать CSS max-width или width , чтобы соответствовать изображению.

Используйте max-width: 100% , чтобы ограничить размер, но разрешить меньшие размеры изображения, используйте width: 100% , чтобы всегда масштабировать изображение по ширине родительского контейнера.

  
  div {
  ширина: 240 пикселей;
  граница: сплошной розовый 1px;
}

img {
  максимальная ширина: 100%;
  соответствие объекта: содержать;
}  

Мы можем дополнительно использовать CSS, чтобы исправить соотношение сторон изображения, узнать больше о представлении изображений с определенным соотношением сторон.

Изменение размера фоновых изображений CSS

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

  
  div {
  фон: url ("cat.jpeg") без повтора;
  граница: сплошной розовый 1px;
}  

Мы можем исправить это, установив свойство background-size .Чтобы изображение поместилось внутри элемента, мы используем значение , содержащее . Браузер поместит изображение внутри границ элемента и пропорционально масштабирует его.

  
  div {
  фон: url ("cat.jpeg") без повтора;
  размер фона: содержать;
  background-position: center;
  граница: сплошной розовый 1px;
}  

Подобно object-fit , мы также можем использовать значение cover , чтобы указать браузеру покрыть элемент кошачьими пикселями. Как вы можете видеть ниже, это приведет к его уменьшению ровно настолько, чтобы соответствовать вертикальному пространству, теперь только правая сторона нашего кота обрезается.

  
  div {
  фон: url ("cat.jpeg") без повтора;
  размер фона: обложка;
  граница: сплошной розовый 1px;
}  

Мы также можем предоставить единственное значение ширины для свойства background-size . Подобно элементу img , высота будет рассчитана автоматически.

  
  div {
  фон: url ("cat.jpeg") без повтора;
  размер фона: 200 пикселей;
  граница: сплошной розовый 1px;
}  

Вот и все!

Я использую Twitter, чтобы делиться новыми советами и приемами веб-разработки, так что подпишитесь на меня, если вам это интересно и вы хотите узнать больше.

Как установить размер фонового изображения с помощью CSS?

Домой » CSS

Здесь мы узнаем об установке изображения в фоновом режиме — как установить размер фонового изображения с помощью CSS?
Отправлено Анджали Сингхом 19 января 2020 г.

Введение:

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

Теперь, когда мы знаем важность и необходимость изображений, почему бы нам не подумать о рассматриваемой теме, а именно о том, как мы можем установить размер фонового изображения с помощью CSS на нашем веб-сайте или веб-странице и ответить на это любопытство, продолжайте читать !

Метод:

Для установки размера фонового изображения используется свойство CSS background-size.

Синтаксис:

 Element {
        размер фона: авто | длина | обложка | содержать;
    }
 

Значения:

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

Это свойство содержит 4 значения для свойства background-size и указано ниже,

  1. авто
  2. длина
  3. крышка
  4. содержат

Давайте обсудим эти свойства по порядку.

1) размер фона: авто

Значение auto свойства background-size полезно для отображения исходного размера изображения с точки зрения длины и ширины. Это также значение по умолчанию.

Синтаксис:

 Element {
        размер фона: авто;
    }
 

Пример:

 




    <стиль>
        div {
            отступ: 25 пикселей;
            фон: url (img_forest.jpg);
            фон-повтор: без повторения;
            размер фона: авто;
            цвет: #fff;
        }
    



     

Размер фонового изображения

Привет, мир

Выход

В приведенном выше примере используется значение свойства auto.

2) размер фона: длина

Значение length свойства background-size полезно для отображения ширины и высоты изображения по выбору пользователя.Первое значение используется для установки ширины, а второе — для установки высоты изображения.

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

Синтаксис:

 Element {
        размер фона: ширина высота;
    }
 

Пример:

 




    <стиль>
        div {
            отступ: 25 пикселей;
            фон: url (img_forest.jpg);
            фон-повтор: без повторения;
            размер фона: 600 пикселей 200 пикселей;
            цвет: #fff;
        }
    



     

Размер фонового изображения

Привет, мир

Выход

В приведенном выше примере определены ширина и длина изображения.

3) размер фона: обложка

Значение покрытия свойства background-size полезно для изменения исходного размера изображения с точки зрения длины и ширины, чтобы покрыть весь контейнер. При необходимости он также может растягивать или обрезать изображение, чтобы покрыть весь контейнер.

Синтаксис:

 Element {
        размер фона: обложка;
    }
 

Пример:

 




    <стиль>
        div {
            отступ: 25 пикселей;
            фон: url (img_forest.jpg);
            фон-повтор: без повторения;
            размер фона: обложка;
            цвет: #fff;
        }
    



     

Размер фонового изображения

Привет, мир

Выход

В приведенном выше примере изображение обрезано по размеру контейнера.

4) размер фона: содержать

Содержимое свойства background-size полезно для изменения исходного размера изображения с точки зрения длины и ширины, чтобы изображение было полностью видимым для пользователя.

Синтаксис:

 Element {
        размер фона: содержать;
    }
 

Пример:

 




    <стиль>
        div {
            отступ: 25 пикселей;
            фон: url (img_forest.jpg);
            фон-повтор: без повторения;
            размер фона: содержать;
            цвет: #fff;
        }
    



     

Размер фонового изображения

Привет, мир

Выход

В приведенном выше примере изображение полностью видно пользователю с помощью background-size: contain.

Учебное пособие и примеры CSS »


ОБЪЯВЛЕНИЕ



ОБЪЯВЛЕНИЕ


Фоновые изображения заголовков — оптимальный размер и расположение

Опубликовано в истории и помечено как header, image.

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

В разделе заголовка по умолчанию отображаются фоновые изображения с эффектом параллакса, охватывающие всю видимую область элемента. В зависимости от текущего размера экрана изображение будет отображаться по-разному на каждом экране / устройстве, поэтому нет определенного оптимального соотношения для изображений, однако рекомендуется использовать изображения размером около 1000 пикселей и не более 1500 пикселей по размеру, чтобы страница загружалась быстрее.

1. Эффект параллакса

В зависимости от изображения и соотношения сторон экрана из-за эффекта параллакса фоновые изображения иногда могут выглядеть немного увеличенными — это потому, что, когда фиксированная позиция установлена ​​на стиль фона, фоновое изображение покрывает всю область экрана вместо видимого элемента. площадь.

Вот скриншот, который лучше иллюстрирует это:

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

Отключить эффект параллакса

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

Второе изображение показывает, как на самом деле позиционируется изображение — как вы можете видеть, оно покрывает только область заголовка, расположенную в центре.

Вы можете отключить фоновый эффект параллакса для фоновых изображений заголовка в разделе Story Options »Header Settings» General »« Включить эффекты параллакса заголовка ».

2. Позиционирование изображения

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

Вы можете сделать это с помощью настройки CSS — просто изменив свойство background-position элемента.Например, чтобы применить нижнее вертикальное выравнивание, но сохранить горизонтальное выравнивание по центру, вы можете использовать следующий фрагмент CSS:

 .header-wrapper> .full-bg-image {
background-position: по центру внизу;
} 

Вы можете добавить фрагмент в раздел Story Options -> Typography & Styles -> Additional Styles section.

Подробнее о доступном свойстве положения фона и доступных параметрах можно прочитать здесь. Короче говоря, первое значение устанавливает горизонтальное выравнивание — вы можете выбрать между слева , по центру и справа , а второй вариант устанавливает вертикальное выравнивание — вы можете выбрать между верхний , центр и нижний .

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

Если вы хотите применить приведенный выше фрагмент CSS только к одной странице, ознакомьтесь с этой статьей, где мы описали, как это можно сделать.

3. Отображение полного изображения без скрытых частей

Фоновые изображения заголовка предназначены для покрытия области заголовка, поэтому они автоматически регулируют свой размер, чтобы покрыть всю область. Однако в некоторых случаях вам может потребоваться полностью отобразить изображение без каких-либо скрытых частей, и это можно сделать, установив размер фонового изображения, который должен содержать. Вот пример того, как это будет выглядеть:

Чтобы применить этот стиль к фоновым изображениям заголовка, добавьте следующий фрагмент в раздел Story Options -> Typography & Styles -> Additional Styles :

. header-wrapper> .full-bg-image {
размер фона: содержать;
фон-повтор: без повторения;
} 

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

Если вы хотите применить приведенный выше фрагмент CSS только к одной странице, ознакомьтесь с этой статьей, где мы описали, как это можно сделать.

Было ли это полезно? 3 1

CSS и CSS3 Полноэкранное фоновое изображение — Dreamweaver CS6 — tutvid.com

1. Выбор фонового изображения

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

2. Техника CSS: размещение изображения

Используя простой метод CSS, нам нужно сначала разместить наше изображение, которое будет фоновым изображением. Чтобы разместить это подходящее место, давайте перейдем в представление «Код» и перетащим наше фоновое изображение с панели «Файлы» в первую строку под открывающим тегом «body».

3. Назначьте идентификатор изображения

Перейдите в представление «Дизайн» и выберите это большое изображение, которое, вероятно, будет покрывать все (вы можете прокрутить вниз, чтобы увидеть свой веб-сайт под этим изображением, если вы беспокоитесь), и после того, как вы выбрали изображение, посмотрите на панель «Свойства» и дайте этому изображению идентификационное имя «fsbg», которое будет нашим маленьким сокращением «полноэкранный фон».

4. Начните добавлять CSS

Мы будем использовать инструменты Dreamweaver для добавления CSS и добавим CSS прямо в этот документ. Если вы достаточно продвинуты, чтобы писать CSS и / или использовать внешний файл CSS, это замечательно и настоятельно рекомендуется, но здесь мы не будем усложнять задачу. Перейдите «Окно»> «Стили CSS», чтобы открыть панель CSS, и нажмите маленькую кнопку «Добавить новое правило CSS» в правом нижнем углу панели.

5. Задайте идентификатор с помощью CSS

В диалоговом окне «Новое правило CSS» мы хотим установить тип селектора на «ID», а затем установить идентификатор на «#fsbg» и определение правила как «(Только этот документ)».Это разместит здесь CSS-код на нашей странице и нацелен на любой HTML-элемент с идентификатором «fsbg».

6. Масштабирование фона с помощью пропорции

Выберите опцию «Коробка», установите ширину «100%» и установите высоту «Авто». Нажмите кнопку «Применить» и переходите к следующему шагу.

7. Зафиксируйте фон с помощью позиционирования

Затем выберите параметр «Положение» и установите для параметров «Верхний» и «Левый» значение «0» — при этом изображение всегда перемещается в верхний левый угол.Также установите Position на «fixed» — это позволит нашему контенту прокручиваться по фоновому изображению. Наконец, установите Z-index на «-100» — это подтолкнет фон «под» всем остальным контентом, так что наш веб-сайт окажется «поверх» нашего фона. Нажмите «ОК», чтобы зафиксировать изменения.

8. Добавьте свойства CSS вручную

Нам все еще нужно добавить два небольших кусочка CSS. Вернувшись на нашу панель CSS, нажмите кнопку ссылки «Добавить свойство» и добавьте следующие свойства: «min-height», установленное на «100%», это гарантирует, что наше изображение заполнит область экрана сверху вниз.Также добавьте свойство min-width, равное «1040px». Это ширина оболочки на моем сайте, поэтому я всегда хочу, чтобы фоновое изображение было как минимум такой же ширины. Обратитесь к моему снимку экрана, если у вас есть вопросы о том, что вы где печатаете.

9. Предварительный просмотр в браузере

Нажмите «F12», чтобы просмотреть в браузере и проверить. Измените размер окна браузера и посмотрите, как меняется фон.

10. Этот метод работает в этих браузерах

Эта версия отлично подходит для Google Chrome, Mozilla Firefox, Opera и Safari.Он также работает в IE7, 8 и 9.

11. Метод CSS3

Теперь мы собираемся использовать более современную и быструю технику, которая использует CSS3, а также вручную напишем наш CSS во внешний файл CSS. Давай повеселимся. Мы используем технику, которую можно найти на CSS-Tricks.com, спасибо Крису и его удивительному сайту!

12. Прикрепите фоновое изображение

Начните с таргетинга тега body с помощью CSS и прикрепите фоновое изображение, и мы установили, чтобы фон не повторялся, он располагался по центру по горизонтали и вертикали, а также установил фиксированное положение.
[code type = ”css” title = ”Code”] body {
background: url (../ images / fullscreen-bg.jpg) центральный центр без повтора исправлен;
}
[/ code]

13. Установите размер фона CSS3

Теперь мы собираемся использовать «размер фона», чтобы указать, что это изображение должно покрывать всю область экрана. Мы дублируем «размер фона» с префиксом для Safari и Chrome (-webkit-), затем снова с префиксом для Firefox (-moz-), а затем снова с префиксом для Opera (-o-). Исходный «размер фона» подходит почти для всех современных браузеров, но мы все же хотим быть конкретными для более старых версий этих браузеров.
[code type = ”css” title = ”Code”] — размер фона webkit: обложка; / * Используется Safari и Chrome * /
-moz-background-size: cover; / * Используется Firefox * /
-o-background-size: cover; / * Используется Opera * /
background-size: cover; / * Все современные браузеры * /
[/ code]

14. Этот метод работает в этих браузерах

Эта версия отлично подходит для Google Chrome, Mozilla Firefox 3.6+, Opera 10+ и Safari 3+. Он также работает в IE9 +.

15. Готовая продукция

Нажмите «F12», чтобы просмотреть фон в браузере и полюбоваться своей работой!

Дополнительные решения: Пакетное решение jQuery: jQuery Backstretch

http://srobbin.com/jquery-plugins/backstretch/

Дополнительные решения: Пакетное решение jQuery: Supersized

http://buildinternet. com/2011/07/supersized-3-2-fullscreen-jquery-slideshow/

Следуй за мной в Твиттере!

Мне нравится Тутвид на Facebook!

Расширенное управление фоновыми изображениями с помощью CSS • Code The Web

Фоновые изображения могут сделать больше, чем вы думаете — узнать о классных способах управления фоновыми изображениями с помощью CSS…

Начало работы

Я думаю, что лучше всего учиться на практике, поэтому я настоятельно рекомендую следовать всем своим урокам.Чтобы продолжить, начните с создания новой папки проекта с файлами index.html и style.css в ней. Добавьте следующий код в свой index.html :

  

    
         Расширенные фоновые изображения CSS ДЕМО 
        
    
    
         

Фоновые изображения

Изображение, которое я буду использовать для демонстраций в этой статье, следующее:

И добавьте фоновое изображение к элементу body в вашем стиле . css file:

  body {
    высота: 150vh;
    background-image: url ('https://codetheweb.blog/assets/img/posts/css-advanced-background-images/mountains.jpg');
}
  

Если вы не знаете, как использовать свойство background-image , сначала проверьте здесь — я буду здесь, когда вы вернетесь!

Причина, по которой высота корпуса заключается в том, что мы можем прокручивать нашу страницу — вы поймете, почему это актуально позже в руководстве. 150vh в основном означает 150% высоты области просмотра.

Когда вы открываете HTML-файл в браузере, он должен выглядеть так:

Если ваш файл выглядит правильно, давайте продолжим!

Помимо свойства background-image , существует множество свойств, которые изменяют способ отображения background-image :

  • background-size
  • background-position
  • background -repeat
  • background-size

В этой статье я рассмотрю каждую в отдельности… Давайте приступим!

размер фона

Помните исходное изображение?
Однако на нашей странице небо очень увеличено!
Это связано с тем, что по умолчанию для background-image заданы фактические размеры изображения ( 4272px на 2848px )

Давайте исправим это!

Свойство background-size может иметь значение cover , содержать или любое значение единицы (например. 1500 пикселей ).

background-size: cover устанавливает размер изображения так, чтобы оно покрыло весь элемент (в данном случае body ).

background-size: contain гарантирует, что все background-image отображаются внутри элемента.

В этом случае мы хотим использовать cover — таким образом мы можем видеть большую часть изображения, но оно будет покрывать весь экран! Давайте попробуем:

  body {
    высота: 150vh;
    background-image: url ('https: // codetheweb.blog / assets / img / posts / css-advanced-background-images / mountains.jpg ');
    размер фона: обложка;
}
  

Результат:
Если вы прокрутите вниз, вы увидите большую часть изображения — это потому, что оно покрывает элемент body (что составляет 150% высоты окна просмотра), а не фактический экран.

Вы также можете установить background-size на фактическое значение — измените свой CSS на это:

  body {
    высота: 150vh;
    background-image: url ('https: // codetheweb. blog / assets / img / posts / css-advanced-background-images / mountains.jpg ');
    размер фона: 2000 пикселей;
}
  

Результат:
Опять же, если вы прокрутите вниз, вы увидите немного больше изображения.

прикрепление фона: фиксированное

прикрепление фона: фиксированное; используется для того, чтобы изображение оставалось на том же месте при прокрутке вниз. Это что-то вроде позиции : фиксированная , но для фоновых изображений. Давайте попробуем и посмотрим, что он делает:

  body {
    высота: 150vh;
    background-image: url ('https: // codetheweb.blog / assets / img / posts / css-advanced-background-images / mountains.jpg ');
    размер фона: 2000 пикселей;
    background-attachment: исправлено;
}
  

Теперь, когда вы прокручиваете страницу вниз, фоновое изображение не перемещается вместе с ним:

ВАЖНО:
Прежде чем продолжить, удалите строку background-attachment: fixed , чтобы мы могли сосредоточиться на других свойствах. Ваш CSS должен выглядеть так:

  body {
    высота: 150vh;
    background-image: url ('https: // codetheweb.blog / assets / img / posts / css-advanced-background-images / mountains.jpg ');
    размер фона: 2000 пикселей;
}
    

background-position

Как видите, отображается не все изображение — а какая часть отображается как ?

Что, если мы хотим показать центр изображения?

Здесь мы можем использовать свойство background-position :

  body {
    высота: 150vh;
    background-image: url ('https://codetheweb.blog/assets/img/posts/css-advanced-background-images/mountains.jpg ');
    размер фона: 2000 пикселей;
    background-position-x: center;
    background-position-y: center;
}
  

Результат:

background-position-x и background-position-y используются для позиционирования изображения по горизонтали ( x ) и вертикали ( y ).

Допустимые значения для background-position-x :

И для background-position-y :

Кроме того, оба принимают числовые значения, например 200px .Они рассчитываются от правого верхнего угла. Так, например, background-position-x из 500px будет 500px слева, а background-position-y из 300px будет 300px сверху.

А пока оставим оба значения как center … (хотя вы можете поиграть, если хотите 😉)

background-repeat

Вы знаете эти мозаичные фоны? Часто это выглядит некрасиво, но может хорошо работать с повторяющимися текстурами.В этом случае мы просто воспользуемся нашим изображением горы, чтобы мозаика была более очевидной. Давайте посмотрим, что происходит, когда мы размещаем изображение мозаикой:

  body {
    высота: 150vh;
    background-image: url ('https://codetheweb.blog/assets/img/posts/css-advanced-background-images/mountains. jpg');
    размер фона: 500 пикселей;
    background-position-x: center;
    background-position-y: center;
}
  

Результат:

Подождите, что? Но это же грабеж! Мы даже не использовали background-repeat !

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

Свойство background-repeat имеет два основных значения: repeat и no-repeat . Это так просто!

По умолчанию background-repeat установлен на repeat , поэтому обычно вам не нужно это использовать. Однако что, если вы хотите отключить плитку? Давайте попробуем:

  body {
    высота: 150vh;
    background-image: url ('https: // codetheweb.blog / assets / img / posts / css-advanced-background-images / mountains. jpg ');
    размер фона: 500 пикселей;
    background-position-x: center;
    background-position-y: center;
    фон-повтор: без повторения;
}
  

Результат:
(причина того, что изображение находится в нижней части экрана, потому что высота тела составляет 150%, помните?)

Ну вот! Вот как свойство background-repeat работает в CSS!

Несколько фонов

Вы заметите, что теперь вокруг нашего изображения появился уродливый белый цвет.Что, если бы мы хотели сделать это, скажем, оранжевым? Вы не поверите, но на самом деле вы можете указать несколько фонов в CSS!

Первый фон будет помещен на экран, а остальные фоны после него будут наложены поверх.

Итак, попробуем! Помните, что background-color: orange идет первым, потому что мы хотим, чтобы он был под image:

  body {
    высота: 150vh;
    цвет фона: оранжевый;
    background-image: url ('https: // codetheweb.blog / assets / img / posts / css-advanced-background-images / mountains.	   
		 
	
Comments