Одне рішення - мати три елементи для кожного типу фону.
Абсолютно поміщайте верхню та нижню фонові зображення у розділ, що
містить повторюваний фон, а потім додайте текст з необхідним
підкладкою.
html
<div id="content">
<div id="top"></div>
<div id="bottom"></div>
Random text that can be expanded
</div>
css
#content{
position:relative;
padding:20px;
}
#top{
position:absolute;
top:0px;
left:0px;
background-image:url();
width:100%;
height:;
}
#bottom{
position:absolute;
bottom:0px;
left:0px;
background-image:url();
width:100%;
height:;
}
Інший спосіб полягає у використанні псевдоелементів ::
before
і :: after
. Однак у браузерах бракує
підтримки, тут знаходиться список http://css-трюків.
com/browser-support-псевдо-елементи/.
Код буде схожим, за винятком того, що вам не доведеться явно
створювати верхній та нижній елементи, які ви могли б просто
зробити
#content::before{
position:absolute;
top:0px;
left:0px;
background-image:url();
width:100%;
height:;
}
#content::after{
position:absolute;
bottom:0px;
left:0px;
background-image:url();
width:100%;
height:;
}
Інше рішення, яке ще не має повної підтримки, але, мабуть,
найбільш ідеальним є декілька фонів CSS3. http://www.css3.info/preview/multiple-backgrounds/
має деякі приклади та список браузерів, які його підтримують.