Содержание

масштабируем фон — учебник CSS

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

Значения background-size

Значения для свойства background-size можно задавать при помощи ключевых слов, а также в любых единицах измерения CSS. В одной записи можно указывать размеры как для одной, так и для двух сторон — горизонтальной и вертикальной (последовательность важна).

Ключевые слова

  • auto (значение по умолчанию) — если данное значение установлено для горизонтали и вертикали, т. е.:

    
    background-size: auto auto;
    

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

    Например, если записать следующее:

    
    background-size: 250px auto;
    

    …то высота фоновой картинки будет вычисляться автоматически.

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




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




Числовые значения

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

Чтобы задать точную ширину и высоту, используйте два значения — первое для ширины, второе для высоты:


background-size: 300px 300px;

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




Чтобы сохранить пропорции фона, используйте для одной из сторон свойство auto:



Здесь высота рисунка составляет 50% от высоты элемента, а ширина подгоняется автоматически

Свойство background-size часто используется на практике. Например, его очень удобно использовать, когда размер элемента указан в процентах. Если задать блоку ширину 50% от ширины экрана, а его фону — ширину 100%, то при изменении размера окна фон всегда будет соответствовать ширине элемента.

Поддержка браузерами

Практически все используемые браузеры (как десктопные, так и мобильные) хорошо работают со свойством background-size. Internet Explorer понимает данное свойство, начиная с 9-й версии.


Далее в учебнике:

пишем стиль для фона, используя сокращенную запись — «мульти»-свойство background.

Фон и границы — Изучение веб-разработки

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

CSS cвойство background является сокращением для ряда полных свойств фона, с которыми мы познакомимся в этом уроке. Если вы обнаружите сложное свойство

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

.box {
  background: linear-gradient(105deg, rgba(255,255,255,.2) 39%, rgba(51,56,57,1) 96%) center center / 400px 200px no-repeat,
  url(big-star.png) center no-repeat, rebeccapurple;
} 

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

Фоновый цвет

Свойство background-color определяет цвет фона для любого элемента в CSS. Свойство принимает любой допустимый цвет <color>

. background-color распространяется на сам контент и отступы от него (padding).

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

Поиграйте с ними, используя любое доступное значение <color>.

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

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

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

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

Свойство  background-repeat

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

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

  • no-repeat — останавливает повторение фонового изображения во всех направлениях.
  • repeat-x — повторение фонового изображения по горизонтали.
  • repeat-y — повторение фонового изображения по вертикали.
  • repeat — повторение фонового изображения в обоих направлениях. Установлено по умолчанию.

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

repeat-x и repeat-y чтобы увидеть, какие эффекты они оказывают.

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

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

Вы также можете использовать ключевые слова:

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

Ниже я применил значения длины к размерам изображения. Глядите, как это исказило изображение.

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

Попробуйте следующее.

  • Измените значения длины, используемые для изменения размера фона.
  • Измените значение длины на background-size: cover или background-size: contain.  
  • Если ваше изображение меньше размеров блока, вы можете изменить значение свойства background-repeat, чтобы повторить изображение.
Позиционирование фонового изображения

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

левый верхний угол блока равен (0,0), а сам блок располагается вдоль горизонтальной (x) и вертикальной (y) осей.

Примечание: По умолчанию значение background-position равно (0,0).

Обычно свойство background-position задают в ввиде двух последовательных значений — значение по горизонтали, за которым следует значение по вертикали.

Вы можете использовать такие ключевые слова, как top и right (с остальными можете ознакомиться на странице

background-position):

. box {
  background-image: url(star.png);
  background-repeat: no-repeat;
  background-position: top center;
} 

Допустимы значения длины и процентные:

.box {
  background-image: url(star.png);
  background-repeat: no-repeat;
  background-position: 20px 10%;
} 

Вы также можете смешивать значения ключевых слов с длинами или процентами, например:

.box {
  background-image: url(star.png);
  background-repeat: no-repeat;
  background-position: top 20px;
}

И наконец, вы также можете использовать синтаксис с четырьмя значениями, чтобы указать расстояние от определенных краёв блока — единица длины в данном случае представляет собой смещение от значения ключевого слова. Итак, в CSS ниже мы сместили фон на 20 пикселей сверху и на 10 пикселей справа:

.box {
  background-image: url(star.png);
  background-repeat: no-repeat;
  background-position: top 20px right 10px;
} 

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

Примечание: background-position — это сокращение для background-position-x и background-position-y, которые позволяют вам устанавливать различные значения положения по оси индивидуально.

Градиент в качестве фона

Градиент — при использовании для фона — действует так же, как изображение, и поэтому задаётся свойством background-image.

Вы можете прочитать больше о различных типах градиентов и о том, что вы можете с ними делать на странице MDN для типа данных <gradient>. Поиграть с градиентами Вы можете используя один из многих генераторов градиентов CSS, доступных в Интернете, например этот. Вы можете создать градиент, а затем скопировать и вставить его в свой код.

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

Несколько фоновых изображений

Также возможно создавать несколько фоновых изображений — просто разделив значения свойства background-image запятыми.

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

Примечание: Градиенты можно легко смешивать с обычными фоновыми изображениями.

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

background-image: url(image1.png), url(image2.png), url(image3.png), url(image1.png);
background-repeat: no-repeat, repeat-x, repeat;
background-position: 10px 20px,  top right;

Каждое значение различных свойств будет соответствовать значениям в той же позиции в других свойствах. Выше, например, значение background-repeat для image1 будет no-repeat. Однако, что происходит, когда разные свойства имеют разное количество значений? Ответ заключается в том, что меньшее количество значений будет циклически повторяться — в приведенном выше примере есть четыре фоновых изображения, и только два значения background-position. Первые два значения позиции будут применены к первым двум изображениям, затем они снова будут циклически повторяться — image3 будет присвоено первое значение позиции, а image4 будет присвоено второе значение позиции.

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

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

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

  • scroll: Заставляет элементы фона прокручиваться при прокрутке страницы. Если содержимое элемента прокручивается, фон не перемещается. Фактически, фон фиксируется в той же позиции на странице, поэтому он прокручивается по мере прокрутки страницы.
  • fixed: Фиксирует  элементы фона в области просмотра, чтобы он не прокручивался при прокрутке страницы или содержимого элемента. Фон всегда будет оставаться на одном и том же месте на экране.
  • local: Это значение было добавлено позже (оно поддерживается только в Internet Explorer 9+, тогда как другие поддерживаются в IE4+), потому что значение scroll довольно запутанно и во многих случаях действительно не делает то, что вы хотите. Значение local фиксирует фон для элемента, к которому он применён, поэтому, когда вы прокручиваете элемент, фон прокручивается вместе с ним.  

Свойство background-attachment действует только тогда, когда есть контент для прокрутки, поэтому мы сделали пример, чтобы продемонстрировать различия между тремя значениями — взгляните на background-attachment. html (также смотри исходный код здесь).

Использование сокращенного свойства background

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

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

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

  • background-color можно указывать только после последней запятой.
  • Значения background-size могут быть включены только сразу после background-position, разделенные символом ‘/’, например: center/80%

Посетите страницу MDN свойства

, чтобы увидеть полное описание.

 

Доступность просмотра

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

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

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

Мы можем установить границу для всех четырех сторон блока с помощью border:

. box {
  border: 1px solid black;
} 

Или мы можем нацеливаться на один край блока, например:

.box {
  border-top: 1px solid black;
} 

Индивидуальные свойства этих сокращений будут следующими:

.box {
  border-width: 1px;
  border-style: solid;
  border-color: black;
} 

И более детально:

.box {
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: black;
} 

Примечание: Свойства границ top, right, bottom, и left также имеют сопоставленные логические свойства, которые относятся к режиму написания документа (например, текст слева направо, справа налево или сверху вниз). Мы рассмотрим их в следующем уроке, который касается работы с разными направлениями текста.

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

Закруглённые углы

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

Например, чтобы сделать все четыре угла блока радиусом 10px:

.box {
  border-radius: 10px;
} 

Или, чтобы верхний правый угол имел горизонтальный радиус 1em и вертикальный радиус 10%:

.box {
  border-top-right-radius: 1em 10%;
} 

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

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

  1. Задайте рамку равную 5px black solid,  с закругленными углами 10px.
  2. Добавить фоновое изображение (используйте URL balloons.jpg) и установите размер таким образом, чтобы он покрыл весь блок.
  3. Задайте для <h3> полупрозрачный черный цвет фона и сделайте текст белым.

 

Примечание: Вы можете посмотреть решение здесь — но сначала попробуйте сделать это сами!

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

В следующем уроке мы узнаем, как Режим написания вашего документа взаимодействует с вашим CSS. Что происходит, если текст не перетекает слева направо?

Слайдер фонового изображения или меняющийся фон сайта с помощью CSS

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








HTML разметка

Тут все очень просто, нужно просто добавить UL-список в самое начало сразу после тега body.


<ul>
<li></li>
<li></li>
<li></li>
</ul>

В списке всего три строки li, то есть слайдер рассчитан на 3 изображения, если нужно больше, то первым шагом будет добавление еще нужного количества строк. Двигаемся дальше.

CSS стили

Тут наверное самая основная часть работы, так как от CSS, зависит то как будет работать наш слайдер. Открываем файл стиле вашего сайта и добавляем в него следующий код.


.body_slides{
	list-style:none;
	margin:0;
	padding:0;
	z-index:-2; 
	background:#000;}
.body_slides,
.body_slides:after{
    position: fixed;
	width:100%;
	height:100%;
	top:0px;
	left:0px;}
.body_slides:after { 
    content: '';
	background: transparent url(images/pattern.png) repeat top left;}


.body_slides li{
    width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
    background-size:cover;
    background-repeat:no-repeat;
	opacity:0;
    -webkit-animation: anim_slides 18s linear infinite 0s;
    -moz-animation: anim_slides 18s linear infinite 0s;
    -o-animation: anim_slides 18s linear infinite 0s;
    -ms-animation: anim_slides 18s linear infinite 0s;
    animation: anim_slides 18s linear infinite 0s;
}
.body_slides li:nth-child(1){
background-image: url(images/1. jpg) 
}
.body_slides li:nth-child(2){
-webkit-animation-delay: 6.0s;
-moz-animation-delay: 6.0s;
background-image: url(images/2.jpg) 
}
.body_slides li:nth-child(3){
-webkit-animation-delay: 12.0s;
-moz-animation-delay: 12.0s;
background-image: url(images/3.jpg) 
}
@-webkit-keyframes anim_slides {
0% {opacity:0;}
6% {opacity:1;}
24% {opacity:1;}
30% {opacity:0;}
100% {opacity:0;}
}
@-moz-keyframes anim_slides {
0% {opacity:0;}
6% {opacity:1;}
24% {opacity:1;}
30% {opacity:0;}
100% {opacity:0;}
}

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

Наш список со слайдами имеет класс body_slides. Ему заданы стили, для внешнего вида и общих настроек.

Далее у нас идет псевдоэлемент — :after, который задает дополнительный слой и поверх фона наложен узор в виде точек. Делается это с помощью изображение, к которому указан путь images/pattern.png. Если у Вас другой путь, то укажите его правильно.

.body_slides li:nth-child(1) — это первый по порядку слайд и ему задан фоновый рисунок. Далее идет nth-child(2), ему кроме рисунка задано еще время и равно 6 сек. То есть, он появится через 6 секунд после первого слайда. Далее nth-child(3), он появится еще через шесть секунд, поэтому у него время 12 сек. Если нужно добавить 4 слайд, то добавляем nth-child(4) и у него должно быть время уже 18 секунд. Думаю тут понятно.

Далее нужно указать полное время анимации, оно сейчас задано в body_slides li и равно 18 сек. Если добавите 4 слайд то будет равно 24 и так далее. Если с математикой дружите, должны справится, главное не ошибиться ибо слайдер ровно не заработает. По желанию можно ускорить или замедлить, прописав нужное время.

keyframes anim_slides — это появление и исчезновении слайда. Изначально слайд прозрачный и ему задано условие — opacity:0;. Когда приходит очередь любого из слайдов, он сначала появляется, а потом начинает вновь становится прозрачным и полностью исчезает, а на его месте появляется новый. В данном примере — 3 слайда и 100% анимации это время перелистывания всех слайдов, а не одного. Поэтому слайд первый появляется виден и исчезает на 30%(максимально можно 33.3%) потому как, если 100% разделить на 3 слайда — получится 33,3%. Если бы у вас было 4 слайда — то 25%. То бишь, нужно показать появление, показ и исчезновение слайда за 25% от общих 100%. В нашем примере с 3 слайдами. Слайд появляется от 0 до 6%, виден от 6 до 24% и исчезает от 24 до 30%. Если хотите изменить скорость появления или исчезновения, меняйте проценты — это процент от общего времени. От правильности указания процентов — зависит и правильность работы слайдера.

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

На этом все, спасибо за внимание. 🙂

Работа с фоном. Фоновое изображение на практике — Вёрстка

1. Теория
2. Фоновый цвет на практике
3. Фоновое изображение на практике

Повторение

В HTML для вставки изображения есть атрибут BACKGROUND. Все бы ничего, но вот повторялось изображение как хотело. То есть если у вас была таблица 200х200 и рисунок 100х100, то в таблице вы увидите ровно четыре одинаковых рисунка.

<TABLE WIDTH=200 HEIGHT=200 BACKGROUND="fon.gif">
<TR VALIGN=top><TD>четыре фоновых изображения</TD></TR>
</TABLE>

webmascon.com/topics/coding/images/28c.fon.gif»>
четыре фоновых изображения

Чтобы этого избежать, надо было сделать рисунок 200х200, загнать в верхний левый угол наше фоновое изображение, а остальную часть рисунка сделать прозрачной. Если же повторения надо было избежать для всей страницы, то рисунок приходилось делать 1200х900 и более. С появлением CSS проблема ушла в прошлое, сейчас для этих целей служит свойство background-repeat. Например, можно вообще запретить повторение изображения.

<DIV>
одно фоновое изображение
</DIV>

одно фоновое изображение

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

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

Резиновый дизайн обуславливает и то, что нельзя разбивать макет на отдельные таблицы, чтобы сохранить одинаковые ширины колонок при некоторых разрешениях. То есть вся страница заверстывается в одну большую таблицу. Как же решить проблему? Решение, как вы догадываетесь, есть. Надо сделать отдельный слой, в котором будет прописан background в виде одного элемента переплета. Слой должен накладываться на всю таблицу. Сперва мы верстаем таблицу так, словно никакого переплета нет, а затем позиционируем слой с переплетом на нужное нам место:

#to {
 position: absolute;
 top: 74px;
 left: 0px;
 width: 100%;
 color: #000;
 background: url(i/bgall. gif) repeat-x;
 z-index: 10}

. . .

<DIV id=two>
<IMG SRC=../i/css/0.gif WIDTH=1 HEIGHT=25 ALT=»»>
</DIV>

Позиционирование

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

Три колонки, между которыми есть разделительная пунктирная линия. Если верстать таблицами, то нам надо сделать пять столбцов. Если же верстать блоками, то надо сделать всего лишь три блока. Как же тогда реализовать разделители? Очень просто, с помощью background-position. У нас три блока примерно с таким кодом:

#left-col {
 width: 25%;
 float: left}

#main-col {
 width: 50%;
 float: left}

#right-col {
 width: 25%;
 float: left}

. . .

<DIV ID=left-col>
</DIV>
<DIV ID=main-tcol>
</DIV>
<DIV ID=right-col>
</DIV>

Чтобы создать разделитель, нам надо в графическом редакторе вырезать один элемент последовательности, то рисунок 1х5 пикселей, который будет состоять из одной черной точки и четырех белых. После этого надо его внедрить в блок #left-col и заставить повторяться только по вертикали. А затем позиционировать его на 100%, то есть максимально вправо:

#left-col {
 width: 25%;
 background: url(bg.gif) repeat-y;&nbsp
 background-position: 100% 0%;
 float: left}

Обратите внимание, что позиционирование фонового изображения производится относительно блока, то есть ширина блока у нас 25% относительно ширины экрана, а позиционируется он на 100% относительно ширины блока, то есть на 25% относительно ширины экрана. Совершенно аналогично поступаем с блоком main-col (для сокращения кода запишем все свойства фона в background):

#main-col {
 width: 50%;
 background: url(bg.gif) repeat-y 100% 0%;&nbsp
 float: left}

Собственно говоря, больше ничего сложного в работе с фоном нет. Для вас, я надеюсь, тоже.

Михаил Дубаков

1. Теория
2. Фоновый цвет на практике
3. Фоновое изображение на практике

Html код фоновое изображение. Установка бесшовного фона в HTML

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

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

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

Как сделать фон для сайта онлайн

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

О том, как увеличить скорость загрузки блога я писал в предыдущих статьях: « » и « ».

Поэтому в качестве картинки для фона лучше всего использовать ПАТТЕРН.

Паттерн — это небольшая картинка, не имеющая швов, которая при повторении образует большой фон, заполняющий все пространство сайта.

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

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

1) PatternCooler

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

Посмотрите, что у меня получилось выбрать для себя:

2) Stripegenerator

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

Мой результат работы:

3) BgPatterns

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

Посмотрите, что я подобрал себе:

4) Tartanmaker

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

Как поменять фон на сайтах HTML и PHP

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

… Должно получиться примерно следующее:

Если основной паттерн не загрузится, вместо него подгрузится цвет, указанный в bgcolor (FFFFFF).

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

Для этого я закачиваю картинку (паттерн) на хостинг, папка находится по такому адресу:

/ httpdocs/ wp- content/ themes/ Prosumer/ images

/httpdocs/wp-content/themes/Prosumer/images

background: #FFFFFF url(images/fon-1.png) repeat;

background: #FFFFFF url(images/fon-1.png) repeat;

Основные настройки:

  • — repeat — изображение будет повторяться как по вертикали, так и по горизонтали;
  • — repeat-x — повторение только по горизонтали;
  • — repeat-y — повторение только по вертикали;
  • — no-repeat – запрет на повторение.

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

Посмотрите видео «Как поменять фон на сайте» и у вас не должно остаться никаких вопросов.

Влад Мержевич

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

Фон на веб-странице

Установка фонового рисунка на веб-страницу традиционно происходит через атрибут background тега

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

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

Добавление фонового рисунка

Добавление рисунка происходит путем установки адреса картинки через ключевое слово url . Чтобы управлять повторением картинки применяются аргументы no-repeat (нет повторения), repeat-x (повторение по горизонтали) и repeat-y (повторение по вертикали). Благодаря этому можно получить веб-страницу, приведенную на рис. 1.

Чтобы установить картинку на веб-страницу, следует добавить стилевое свойство background к селектору BODY , как показано в примере 1.

Пример 1. Фоновый рисунок

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

В данном примере графический рисунок target.gif определяется как фон веб-страницы без повторения изображения. Чтобы картинка не прилегала плотно к краям браузера, она смещается на 30 пикселов вправо и на 20 пикселов вниз от своего исходного положения.

Повторение рисунка

Благодаря тому, что можно задавать повторение фонового рисунка по горизонтали или вертикали, доступно несколько вариантов оформления веб-страниц. Например, для создания вертикальной полосы по левому краю (рис. 2) понадобится изображение, показанное на рис. 3.

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

Пример 2. Повторение фона по вертикали

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

Аналогично можно делать повторение фона по горизонтали, например, создав градиент и установив его в качестве фоновой картинки (рис. 4).

Чтобы получить веб-страницу, приведенную на рис. 4, потребуется вначале сделать картинку с градиентным переходом. Ширину достаточно указать 20-40 пикселов, а высота рисунка зависит от цели документа и предполагаемой высоты содержимого веб-страницы. Не стоит также забывать, что рисунок большого размера приведет к увеличению объема графического файла. А это отрицательно скажется на скорости его загрузки и, в конечном итоге, приведет к замедлению отображения фона. Для данного случая вполне подошла картинка размером 30х200 пикселов (рис. 5).

В примере 3 показан код HTML для создания градиентного фона.

Пример 3. Повторение фона по горизонтали

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

Lorem ipsum. ..

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

Добавление рисунка к тексту

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

Пример 4. Добавление рисунка

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

Заголовок

Основной текст

Как показано в данном примере, рисунок можно сдвигать по горизонтали и вертикали относительно своего исходного положения, по умолчанию это левый верхний угол блочного элемента. Сдвиг фона позволяет установить изображение по отношению к тексту желаемым образом. Чтобы текст не накладывался на рисунок, обязательно следует добавить свойство padding-left , за счет него текст смещается вправо на указанное расстояние. Оно в каждом случае индивидуально и обычно равно ширине рисунка плюс желаемому отступу между изображением и текстом.

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

Основные теги HTML для создания фона

Итак, переходим к вопросу, фоном в html на весь экран. Для того чтобы сайт красиво выглядел, необходимо понимать одну достаточно важную деталь: достаточно просто сделать градиентный фон или закрасить его однотонным цветом, но если вам необходимо вставить на задний план картинку, она не будет растягиваться на всю ширину монитора. Изображение изначально нужно подобрать или самостоятельно сделать дизайн с таким расширением, в котором у вас будет отображаться страница сайта. Только после того как фоновое изображение готово, переносим его в папку с названием «Images». В ней мы будем хранить все используемые картинки, анимации и другие графические файлы. Эта папка должна находиться в корневом каталоге со всеми вашими файлами html. Теперь можно переходить и к коду. Существует несколько вариантов записи кода, с помощью которого фон будет меняться на картинку.

  1. Написать атрибутом тега.
  2. Через CSS стиль в HTML коде.
  3. Написать CSS стиль в отдельном файле.

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

  1. Первый способ записи через атрибут тега (body) в файле index.htm. Он записывается в таком виде: (body background= «Название_папки/Название_картинки.расширение»)(/body). То есть если у нас картинка с названием «Picture» и расширением JPG, а папку мы назвали как «Images», тогда запись HTML-кода будет выглядеть так: (body background=»Images/Picture.jpg»)… (/body).
  2. Второй метод записи затрагивает CSS стиль, но записывается в том же файле с названием index.htm. (body../Images/Picture.jpg»)»).
  3. И третий способ записи производится в двух файлах. В документе с названием index.htm в записывается такая строчка: (head)(link rel=»stylesheet» type=»text/css» href=»Путь_к CSS_файлу»)(/head). А в файле стилей с названием style.css уже записываем: body {background: url(Images/Picture.jpg»)}.

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

Способы растягивания фоновой картинки на ширину окна

Представим наш экран в процентном виде. Получается, что вся ширина и длина экрана будет составлять 100% х 100%. Нам необходимо растянуть картинку на эту ширину. Добавим к записи изображения в файл style.css строку, которая и будет растягивать изображение на всю ширину и длину монитора. Как это записывается в CSS стиле? Все просто!

background: url(Images/Picture.jpg»)

background-size: 100%; /* такая запись подойдет для большинства современных браузеров */

Вот мы и разобрали, как сделать картинку фоном в html на весь экран. Есть еще способ записи в файле index.htm. Хоть этот метод и устаревший, но для новичков необходимо его знать и понимать. В теге (head)(style) div { background-size: cover; } (/style) (/head) эта запись означает, что мы выделяем специальный блок для фона, который будет позиционироваться по всей ширине окна. Мы рассмотрели 2 способа, как сделать фон сайта картинкой html, чтобы изображение растягивалось на всю ширину экрана в любом из современных браузеров.

Как сделать фиксированный фон

Если вы решили использовать картинку в качестве фона будущего веб-ресурса, тогда вам просто необходимо узнать, как его сделать неподвижным, чтобы он не растягивался в длину и не портил эстетичный вид. Достаточно просто с помощью прописать это небольшое дополнение. Вам необходимо в файле style.css дописать одну фразу после background: url(Images/Picture.jpg») fixed; или вместо нее добавить после точки с запятой отдельную строчку — position: fixed. Таким образом, ваш фоновый рисунок станет неподвижным. Во время прокрутки контента на сайте, вы увидите, что текстовые строки двигаются, а фон остается на месте. Вот вы и научились, как в html сделать фон картинкой, несколькими способами.

Работа с таблицей в HTML

Многие неопытные веб-разработчики, сталкиваясь с таблицами и блоками, часто не понимают, как в html сделать картинку фоном таблицы. Как и все и CSS стиля, этот язык веб программирования достаточно простой. И решением такой задачи будет написание пары строк кода. Вы уже должны знать, что написание табличных строк и столбцов обозначается соответственно как теги (tr) и (td). Чтобы фон таблицы сделать в виде изображения, необходимо дописать к тегу (table), (tr) или (td) простую фразу с указанием ссылки на картинку: background = URL картинки. Для наглядности приведем пару примеров.

Таблицы с картинкой вместо фона: HTML примеры

Нарисуем таблицу 2х3 и сделаем ее фоном картинку, сохраненную в папке “Images”: (table background = “Images/Picture.jpg”) (tr) (td)1(/td) (td)2(/td) (td)3)(/td)(/tr) (tr)(td)4(/td) (td)5(/td) (td)6(/td)(/tr) (/table). Так наша таблица будет закрашена в фон картинки.

Теперь нарисуем эту же табличку размерами 2х3, но вставим картинку в столбики под номером 1, 4, 5 и 6. (table)(tr)(td background = “Images/Picture.jpg”)1(/td) (td)2(/td) (td)3(/td)(/tr) (tr)(td background = “Images/Picture.jpg”)4(/td) (td background = “Images/Picture.jpg”)5(/td) (td background = “Images/Picture.jpg”)6(/td) (/tr) (/table). После просмотра видим, что фон появляется только в тех ячейках, в которых мы прописали, а не во всей таблице.

Кроссбраузерность сайта

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

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


Для отображения изображения на странице используется атрибут src . Src появилось от source, что означает Источник. Значением атрибута src является url-адрес изображения.


Строка выше означает, что изображение находится в той же директории (папке), что и сам html-файл, ссылающийся на данное изображение. Допустим, у Вас есть папка html , в которой содержится index.html с указанным выше кодом и само изображение с названием image.jpg .


В таком случае при открытии index.html в браузере Вы увидите данное изображение. Если же оно у Вас где-либо в другом месте (на папку выше или ниже), то вместо этого у Вас отобразится либо белое поле, либо небольшой прямоугольник с красным крестиком (не удалось загрузить изображение).


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

Атрибуты тега img

Помимо src у тега img есть и другие атрибуты, которые отвечают за размеры отображаемого изображения, подпись к нему и прочее.


src — адрес изображения
width — ширина изображения
height — высота изображения
title — подпись, которая высвечивается при наведении на изображение
alt — альтернативный текст. Нужен для поискового робота и индексации изображений
border — толщина границы изображения. 0 — нет границы, 1 — самая тонкая граница и тд

Адрес вставленного изображения (примеры)

Как правило, изображения хранятся не в той же папке, что и сам html-файл . Для этого в той же директории создаётся папка images (или img, тут на вкус и цвет). А в неё уже кладутся все нужные изображения. В случае с отдельным хранением нужно будет прописывать для атрибута src уже другой адрес


Если файл лежит на папку выше, то так


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

Фоновое изображение в HTML

В качестве фонового изображения могут выступать файлы с расширениями gif , jpg , jpeg и png . В том случае, если размер изображения меньше окна браузера, то изображение будет автоматически дальше заполнять оставшийся фон. В body используем атрибут background , в котором прописываем путь к изображению

Любая комната будет выглядеть намного лучше, если ее пол устилает дорогой персидский ковер. Так чем хуже ваш сайт? Может, пришла пора и его пол «застелить » дорогим изящным паласом ручной работы. Разберемся подробнее, как сделать фон для сайта:

Фон для сайта

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

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

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

Основы работы с фоном в html

В качестве фона можно использовать несколько элементов:

  • Цвет;
  • Фоновую картинку;
  • Текстурное изображение.

Разберемся с применением каждого из них подробнее.

Для того чтобы установить цвет заднего фона для сайта используется свойство background-color стилевого атрибута style . То есть, чтобы задать основной цвет для веб-страницы, нужно прописать его внутри тега

. Например:

Фон сайта #55D52B


Кроме шестнадцатеричного кода цвета поддерживается значение в формате ключевого слова или RGB . Примеры:

Фон сайта rgb(23,113,44)


Фон сайта green


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

В html поддерживается всего 16 ключевых слов для задания цвета. Вот несколько из них: white, red, blue, black, yellow и другие.

Поэтому для того, чтобы установить фон для сайта html , лучше использовать шестнадцатеричный формат или RGB .

Кроме выбора цвета доступны и другие параметры настройки. Если свойству background-color задать значение transparent , то фон страницы станет прозрачным. Это значение данному свойству присвоено по умолчанию.

Теперь рассмотрим возможности языка гипертекста для установки фонового рисунка для сайта. Это возможно сделать с помощью свойства background-image .


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

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


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


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

  • repeat-x – повторение фонового изображения по горизонтали;
  • repeat-y – по вертикали;
  • repeat – по обеим осям;
  • no-repeat – повторение запрещено.

Среди перечисленных вариантов нас интересует последний. Перед тем, как поменять фон сайта, используем его в своем коде:


Но, конечно, лучше, если бы наш летун расположился посредине экрана. Свойство background-position как раз и предназначено для позиционирования фонового рисунка на странице. Задавать координаты расположения можно несколькими способами:

  • Ключевым словом (top , bottom , center, left, right) ;
  • Процентами – отсчет начинается от верхнего левого угла;
  • В единицах измерения (пикселях ).

Воспользуемся самым простым вариантом центрирования:

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

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

Текстурный фон сайта

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

Такой объем никак не влияет на скорость загрузки страницы браузером при высокоскоростном соединении с интернетом. Но как быть с мобильным интернетом, при использовании которого загрузка нескольких «метров » займет много времени?

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

Для создания темного фона для сайта заходим в Photoshop , создаем изображение в виде полоски длинной 1200 пикселей, и шириной 15 пикселей. Затем применяем простой черно-белый градиент и подключаем получившуюся текстуру к странице сайта:


Средства CSS

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

Фон

В данном разделе можно задавать фоновое оформление редактируемому элементу.

В поле Цвет фона —  можно выбрать необходимое цветовое оформление фона выбранного элемента.

Для его редактирования нажмите левой кнопкой мыши по кнопке «Обзор» .  В открывшемся окне Цвета выберите  наиболее удобный для Вас вариант из предложенных.

В разделе Спектр есть возможность в общей палитре цветов при наведении курсора выбрать необходимый оттенок и , далее в шкале, выводимой справа более точно подобрать нужный цвет.  Код выбранного цвета отображается внизу окна. Так же можно ввести самостоятельно необходимый код цвета  шестнадцатеричным значением цвета RGB, например: #ff0000 (красный).
Когда возникает необходимость в использовании какого либо «нестандартного» цвета необходимо определить его значение RGB, (Red, Green , Blue )сочетание красного, зеленого и синего цвета в числовом выражении. Каждый оттенок из основных цветов в системе RGBможет выражаться в числе от0до255.

По окончании выбора цвета нужно нажать кнопку «Применить«.

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

По окончании выбора цвета нужно нажать кнопку «Применить«.

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

По окончании выбора цвета нужно нажать кнопку «Применить«.

 

Повтор фонового изображения

Продолжим тему Фоновые изображения

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

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

Достаточно сделать с края поля одну полоску, и она повторяясь займёт всё отведённое пространство.

Называется это свойство background-repeat, и имеет несколько значений

1. no-repeat — Запрещает повтор изображения, и оно по умолчанию размещается в левом верхнем углу.
2. repeat —  изображение повторяется по горизонтали и вертикали.

3. repeat-x — изображение повторяется только по горизонтали.

4. repeat-y — изображение повторяется только по вертикали.

Давайте возьмём вот такую маленькую картинку, и сделаем из неё фон для тега body, то есть для поля экрана.

<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="utf-8" />
<title>Документ без названия</title>
<style>
body{
  background-image: url(images/i3.png);
  background-repeat: repeat;
}
</style>
</head>

<body>

</body>
</html>

Посмотрим результат.

Вообще-то значение repeat выполняется по умолчанию, и применяется только в специальных случаях. В основном применяется запрет повтора — no-repeat.

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


Перемена

Учитель физики будит заснувшего ученика:
— И кого ты видел во сне?
— Ломоносова. Он вам, Петр Иванович, привет передавал!

Фоновые изображения в css < < < В раздел > > > Позиционируем фоновое изображение
 

background-image — CSS: каскадные таблицы стилей

Свойство CSS background-image устанавливает одно или несколько фоновых изображений для элемента.

Исходный код этого интерактивного примера хранится в репозитории GitHub. Если вы хотите внести свой вклад в проект интерактивных примеров, клонируйте https://github. com/mdn/interactive-examples и отправьте нам запрос на перенос.

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

Затем поверх них рисуются границы элемента, а под ними рисуется background-color . Способ рисования изображений относительно блока и его границ определяется свойствами CSS background-clip и background-origin .

Если указанное изображение не может быть нарисовано (например, когда файл, обозначенный указанным URI, не может быть загружен), браузеры обрабатывают его так же, как и значение none .

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

Каждое фоновое изображение задается либо как ключевое слово none , либо как значение .

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

  фоновое изображение:
  linear-gradient (вниз, rgba (255,255,0,0.5), rgba (0,0,255,0.5)),
  url ('https://mdn.mozillademos.org/files/7693/catfront.png');  

Значения

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

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

   # где  = none |  где  =  | <изображение ()> | <набор изображений ()> |  | <краска ()> | <плавное затухание ()> | <градиент> где  = image (? [?, ?]!)  = image-set ( #)  = element ()  = paint (, ?)  = cross-fade (< cf-mix-image>, ?) <градиент> =  | <повторяющийся линейный градиент ()> | <радиальный градиент ()> | <повторяющийся радиальный градиент ()> |  где  = ltr | rtl  =  | <строка> <цвет> =  |  |  |  |  | <имя-цвета> | текущий цвет | <устаревший системный цвет> <параметр-набор-изображений> = [<изображение> | ]   =   = ? && <изображение>  = <изображение> |   = linear-gradient ([ | to ]?, )  = повторяющийся -linear-gradient ([ | to ]?, )  = radial-gradient ([ || < size>]? [at ]?, )  = повторяющийся-радиальный-градиент ([ || ]? [ at <позиция>]?, )  = conic-gradient ([from ]? [at ] ?, ) где  = rgb (<процент> {3} [/ <альфа-значение>]?) | rgb (<число> {3} [/ <альфа-значение>]?) | rgb (<процент> # {3}, <альфа-значение>?) | rgb (<число> # {3}, <альфа-значение>?)  = rgba (<процент> {3} [/ <альфа-значение>]?) | rgba (<число> {3} [/ <альфа-значение>]?) | rgba (<процент> # {3}, <альфа-значение>?) | rgba (<число> # {3}, <альфа-значение>?)  = hsl (<оттенок> <процент> <процент> [/ <альфа-значение>]?) | hsl (<оттенок>, <процент>, <процент>, <альфа-значение>?)  = hsla (<оттенок> <процент> <процент> [/ <альфа-значение>]?) | hsla (<оттенок>, <процент>, <процент>, <альфа-значение>?) <сторона-или-угол> = [слева | справа] || [наверх | внизу] <список-цветов-остановок> = [<линейный-цвет-стоп> [, <линейный-цвет-подсказка>]? ] #, <линейный-цвет-остановка> <конечная-форма> = круг | эллипс <размер> = ближайшая сторона | дальняя сторона | ближайший угол | дальний угол | <длина> | <длина- процент> {2} <позиция> = [[слева | центр | справа] || [наверх | центр | внизу] | [слева | центр | право | <длина-процент>] [наверх | центр | внизу | <длина-процент>]? | [[слева | справа] <длина-процент>] && [[наверх | снизу] <процент-длины>]] <список-углов-остановок> = [<цвет-угловых-указателей> [, <угольные-цветные-подсказки>]? ] #, <угловой-цветной-стоп>, где <альфа-значение> = <число> | <процент> <оттенок> = <число> | <угол> <линейная- цвет-остановка> = <цвет> <цвет-остановка>? <линейный- цвет-подсказка> = <длина-процент> <длина-процент> = <длина> | <процент> <угловой-цвет-остановка> = <цвет> && <цвет-стоп-угол>? <угловой-цвет-подсказка> = <угол-процент>, где <длина-цвет-стоп> = <длина-процент> {1,2} <цвет-стоп-угол> = <угол-процент> {1,2} <угол-процент> = <угол> | <процент>  

Наслоение фоновых изображений

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

HTML
  

Этот абзац полон кошек
и звезд.

Этого абзаца нет.

Вот вам еще кошек.
Посмотрите на них!

И не более того.

CSS
  п {
  размер шрифта: 1.5em;
  цвет: # FE7F88;
  фоновое изображение: нет;
  цвет фона: прозрачный;
}

div {
  фоновая картинка:
      url ("https: // mdn.mozillademos.org/files/6457/mdn_logo_only_color.png ");
}

.catsandstars {
  фоновая картинка:
      url ("https://mdn.mozillademos.org/files/11991/startransparent.gif"),
      URL ("https://mdn.mozillademos.org/files/7693/catfront.png");
  цвет фона: прозрачный;
}
  
Результат

таблицы BCD загружаются только в браузере

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

Чтобы углубиться в глубину, сокращенное свойство background может иметь дело со всеми основными аспектами манипулирования фоновым изображением.

 
тело {
  фон: белый URL (http://www. htmldog.com/images/bg.gif) без повтора вверху справа; 
}
  

Это объединяет следующие свойства:

  • background-color , с которыми мы сталкивались раньше.
  • background-image , где находится само изображение.
  • background-repeat , так изображение повторяется. Его значение может быть:
    • повтор , эквивалент эффекта «плитки» по всему фону,
    • repeat-y , повторение по оси y, вверху и внизу,
    • repeat-x (повторение по оси x, рядом) или
    • no-repeat (показывает только один экземпляр изображения).
  • background-position , который может быть верхний , центральный , нижний , левый , правый , длина, процентное соотношение или любая разумная комбинация, например верхний правый .

Рекламируйте здесь! На давнем, начитанном и уважаемом ресурсе веб-разработки.

Неповторяющийся фон в правом верхнем углу.

На самом деле его также можно использовать для указания некоторых других функций фона, в частности, прикрепления, клипа, происхождения и размера (подробности см. В справке по свойству background ), но давайте пока не будем увлекаться — цвет, изображение, повтор и положение — безусловно, самые фундаментальные аспекты, которыми вы хотели бы манипулировать чаще всего.

Фоновые изображения можно использовать в большинстве элементов HTML — не только для всей страницы (тела), но и для простых, но эффективных результатов. Например, фоновые изображения используются на этом веб-сайте как маркеры в списках, как увеличительное стекло в поле поиска и как значки в верхнем левом углу некоторых заметок, таких как эта.

пуленепробиваемых фоновых изображений | Монитор кампании

Могу ли я использовать пуленепробиваемые фоновые изображения или кнопки поверх других фоновых изображений?

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

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

Как сделать мое пуленепробиваемое фоновое изображение отзывчивым?

Поскольку Outlook не поддерживает запросы @media, вам нужно беспокоиться только о почтовых клиентах, которые их поддерживают.Таким образом, реагировать должен только элемент HTML, а не VML. В качестве общей рекомендации более надежно использовать ширину на основе пикселей в HTML, и затем вы можете заменить это другой шириной на основе пикселей или процентов для других окон просмотра, например, с любым адаптивным веб-дизайном.

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

Можно ли отключить повторение фоновых изображений?

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

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

Фоны с полной шириной сообщения электронной почты в Outlook основаны на свойстве mso-width-percent, поскольку процентные значения не работают со свойством обычной ширины. К сожалению, в Outlook 2007/2010/2013 есть несколько ошибок, влияющих на этот метод.

Outlook устанавливает минимальный размер основного текста для всех электронных писем HTML. И если вы установите для элемента VML значение «mso-width-percent: 1000» (100% ширина), он основывает отображаемую ширину на полной ширине электронной почты / области просмотра, при этом добавляя поля 10 пикселей с каждой стороны. Таким образом, если вы центрируете содержимое внутри таблиц фоновых изображений полной ширины, это может смещать это содержимое на 10 пикселей вправо, а также вызывать горизонтальную прокрутку.

Вы можете поэкспериментировать с уменьшением процента ширины MSO примерно до 960-980, чтобы избежать прокрутки, но выравнивание по-прежнему будет зависеть от ширины области просмотра.

Почему мое фоновое изображение увеличено или уменьшено в Outlook?

В отличие от большинства других почтовых клиентов и браузеров, Outlook 2007/2010/2013 использует DPI вашего фонового изображения для определения масштаба. Поэтому, чтобы обеспечить правильный размер изображения, установите разрешение изображения 96 точек на дюйм.

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

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

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

Чтобы центрировать содержимое по горизонтали, вы можете заменить тег

на
.Выравнивание содержимого по правому краю можно выполнить с помощью

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

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

Это связано с тем, что Outlook всегда ожидает абзаца внутри элементов VML (и вставляет их, если такового нет).Но чтобы обойти эту проблему, вы можете добавить строку

right перед закрывающим тегом , и пробела не должно быть больше.

Могу ли я сделать фоновые изображения доступными для редактирования с помощью тегов шаблонов Campaign Monitor?

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

Если вы хотите, чтобы эта функция была добавлена ​​в редактор, сообщите о себе на нашем форуме или по электронной почте.

CSS-фоновых изображений и специальных возможностей

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

Проблема

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

Основная проблема с не декоративными фоновыми изображениями CSS заключается в том, что при выключении изображений или включении режима высокой контрастности (например, в ОС Windows) фоновые изображения исчезают.Если фоновое изображение либо содержит текст, как в случае вкладок страниц, либо содержит значимые изображения значков, то пользователи режима высокой контрастности и пользователи без изображений не увидят этот контент. Хотя это может повлиять только на пользователей программ чтения с экрана, для пользователей программ чтения с экрана это легче решить, используя атрибут title для ссылок на изображения и текста вне экрана внутри контейнеров, содержащих фоновые изображения.

Сравнение со встроенными изображениями

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

Требования

Для изображений текста — для чего этот метод часто используется — существует четкое требование WCAG 2 уровня AA не использовать изображения текста, когда текст может быть отображен технологической платформой. Для веб-приложений текст почти всегда можно создать, за исключением шрифтов, которые могут отсутствовать в пользовательских системах. В этих случаях можно использовать технику стиля Куфон.Проблема все еще остается для изображений, которые не являются текстовыми, но имеют смысл, и проблемы все еще актуальны для других требований доступности, таких как Раздел 508.

Решения

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

Не использовать фоновые изображения

Просто замените недекоративный фон CSS стандартными встроенными изображениями.Это решение не решает проблему производительности, но предоставляет доступное решение, а именно то, сколько сайтов было отображено за последние 15 лет.

Позиционирование частей встроенного изображения

Не использовать фоновые изображения — используйте встроенные изображения, но с помощью CSS, чтобы расположить только ту часть изображения, которую вы хотите видеть в нужных элементах. В основном это включает в себя создание карты спрайтов встроенного изображения. Информацию об этой технике можно найти в статье TJK Design CSS Sprite.

Использовать до или после псевдоэлементов

Для отображения изображений могут использоваться псевдоэлементы. Этот метод отлично работает для изображений, чтобы они оставались на экране, но не поддерживается некоторыми браузерами, в основном Internet Explorer 7. Информацию об этом методе можно найти в блоге Paciello Group. Кроме того, псевдоэлементы не могут быть выбраны.

Используйте холст HTML 5

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

Используйте хитрость позиционирования CSS

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

Похоже, что этот метод не работает в разных браузерах одинаково. Firefox по-прежнему отображает текст поверх фонового изображения, в то время как Internet Explorer скрывает текст за изображением. Хотя в режиме высокой контрастности Internet Explorer не отображал текст должным образом.

Заключение

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

Хотите расширить знания своей команды о передовых методах обеспечения доступности Интернета?

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

Почему я не могу редактировать и изменять фоновое изображение? — База знаний BlueConic

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

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

Например, если HTML выглядит так …

 

Lorem ipsum dolor sit amet, conctetur adipiscing elit.

… и вы можете только редактировать текст, тогда очевидно магический класс «background-image» заставляет изображение появляться позади текста.

В приведенном выше примере, если вы хотите изменить фактическое изображение, измените атрибут «src» тега «img» на URL-адрес другого изображения. Просто убедитесь, что URL-адрес изображения общедоступен, другими словами, изображение должно быть загружено на общедоступный веб-сайт.

Иногда в исходном HTML-коде вообще нет тега img:

 

Lorem ipsum dolor sit amet, conctetur adipiscing elit.

В этом случае изображение доставляется через класс CSS «background-image», а URL-адрес изображения является частью самой таблицы стилей. BlueConic не может редактировать саму таблицу стилей, поэтому в этом случае нет возможности редактировать изображение.

Суммируем:

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

Фоны: Фоновое изображение — Учебник по HTML

Если вы хотите добавить фоновое изображение вместо простого цвета, перед этим вы должны учесть некоторые соображения:
  • Достаточно ли дискретное фоновое изображение, чтобы не отвлекать внимание от того, что написано на нем?
  • Будет ли фоновое изображение работать с цветами текста и цветами ссылок, которые я установил для страницы?
  • Будет ли фоновое изображение работать с другими изображениями, которые я хочу разместить на странице?
  • Как долго страница загружает фоновое изображение
    ? Он просто слишком большой?
  • Будет ли работать фоновое изображение, когда оно копируется на всю страницу? Во всех разрешениях экрана?


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

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

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


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

gif» bgcolor = «# 333333″>

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

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

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


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

Последняя страница в этом разделе научит вас, как добавить фиксированное изображение на вашу страницу …..

Код Фоновое изображение полноразмерного героя с прозрачным наложением | Автор: Даниэль Зузевич

Мы упростим эту задачу и возьмем бесплатное фото HD с Unsplash.Мы будем использовать красивое изображение леса.

Фотография леса для использования в полноширинном фоновом изображении.

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

Наше главное изображение будет состоять только из двух HTML-элементов.

  • Родительский div, которому мы дадим класс big-image .
  • Дочерний div, которому мы дадим класс оверлей .

Неважно, какие имена классов вы даете элементам, если они имеют стиль, который я обрисовал в разделе CSS.

Вот весь HTML, который нам понадобится:

Структура HTML для фонового изображения и наложения.

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

Вот CSS для этого во всей красе.

После этого изображение нашего главного героя уже отображается в браузере.

Наше изображение теперь отображается в браузере и имеет полную ширину!

Последний шаг настолько прост, моя бабушка уже сделала раньше нас! Давай догоним ее.

Все, что нам нужно сделать здесь, это создать div, который будет составлять 100% высоты и ширины его родительского элемента, который в нашем случае равен .big-image . Мы собираемся убедиться, что мы также установили для оверлея div абсолютную позицию, чтобы гарантировать, что он будет буквально накладываться на .big-image .

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

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

Вот последний CSS для .overlay div.

CSS для нашего прозрачного оверлея.

Тада! И вот, дамы и господа.

.

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

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