Четверг, 21.11.2024, 11:52
Вы вошли как Гость | Группа "Гости"Приветствую Вас Гость

Заработок в интернете

[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Как добавить две фоновые картинки на веб-страницу?
maxmer3Дата: Среда, 03.02.2010, 15:31 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 337
Репутация: 1
Статус: Offline
Добавление одновременно двух фоновых изображений обычно продиктовано дизайном веб-страницы. При этом, как правило, один фон повторяется по горизонтали или вертикали, а второй фон выводится без всякого повторения. Впрочем, подобные детали зависят целиком и полностью от воли дизайнера, поэтому рассмотрим универсальную технологию добавления двух фоновых картинок.

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

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

Фон, добавляемый в селекторе BODY, занимает высоту, равную содержимому веб-страницы. Если имеется только одна текстовая строка, то фон будет равен ее высоте, а никак не занимать всю высоту окна браузера.
Отступы на странице, а также вокруг элементов (например, тега <P>) заставляют фон в браузерах Opera и Firefox отходить от края окна. Получается, что фон отстоит от края окна на некотором расстоянии.
Добавление цвета фона к селектору BODY приводит к сокрытию одного из фоновых изображений.
Проблема с высотой решается добавлением атрибута height со значением 100% к селектору HTML и BODY. Отступы придется обнулить, причем сделать это на самой странице и у абзаца, добавив margin: 0 к селектору BODY и P. Вопрос с цветом фона обходится легко, достаточно задать цвет у селектора HTML.

Рассмотрим добавление двух фоновых картинок на конкретном примере. Имеется два изображения, которые должны повторяться по вертикали, их необходимо пустить фоном по левому и правому краю веб-страницы. Также следует задать цвет фона оранжевым со значением #fc0. Приведено изображение для левого края (назовем его bgleft.png), а для правого (bgright.png).

Окончательный код с учетом всех замечаний приведен в примере:

Code
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
  <head>
   <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
   <title>Два фоновых изображения</title>
   <style type="text/css">
    HTML {
     background: #fc0 url(images/bgleft.png) repeat-y; /* Цвет фона веб-страницы,
                    путь к графическому файлу с фоном и
                    повторение фона по вертикали */
     height: 100%; /* Высота элемента */
    }
    BODY {
     background: url(images/bgright.png) repeat-y 100% 0; /* Путь к графическому файлу с фоном,
                    повторение фона по вертикали,
                    расположение картинки по  
                    правому краю окна браузера */
     margin: 0; /* Обнуляем отступы на странице */
     height: 100%; /* Высота элемента */
    }
    P {
     margin: 0; /* Обнуляем отступы */
     padding: 5px 0 0 20px; /* Поля вокруг текста */
    }
   </style>
  </head>
  <body>
   <p>Содержимое веб-страницы</p>
  </body>
</html>
 
  • Страница 1 из 1
  • 1
Поиск:


sitemap.xml|sitemap-forum.xml