Давно хотел реализовать в каком-нибудь из своих проектов, возможно уже не модный, в силу громыхающего миру Windows8 UI, дизайн а-ля subtlepatterns.com. Одним из элементов желаемого является волнистый край блочных элементов. И само собой, необходима кроссбраузерность (в разумных пределах) и никакой вспомогательной графики, вроде border-image.
К сожалению, знаний не хватило написать нужное без определенных ограничений — на сервере должен быть установлен PHP (наверное, сейчас не найдется платного хостинга без такой возможности) и второе, более значительное ограничение — ширина блочного элемента ограничена неким фиксированным значением, т.е. об адаптивности дизайна речи нет.
Впрочем, моя вера в доброжелательность хабрасообщества оказалась сильнее боязни быть закиданным тухлыми помидорами. Поэтому надеюсь на добрые советы по оптимизации, а так же решению обозначенных выше двух проблем.
Заранее извиняюсь, если не дай бог велосипед.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>
</title>
<meta http-equiv="content-type" content="text/html; charset=windows-1251">
<style>
body {
background: #eee;
font-family: Arial, Tahoma, Vernada;
}
h1 {
font-size: 28px;
}
.main {
background: #302828;
margin: 0 auto;
width: 1000px;
height: 155px;
color: #888;
font-size: 12px;
}
.main-text {
text-align: center;
}
.header {
margin: 0 auto;
width: 1000px;
height: 20px;
}
.waves1 {
background: #302828;
width: 10px;
height: 10px;
border-radius: 5px 5px 0 0/3px 3px 0 0;
float: left;
margin-top: 18px;
}
.waves2 {
background: #eee;
width: 10px;
height: 10px;
border-radius: 0 0 5px 5px/0 0 3px 3px;
float: left;
margin-top: 12px;
}
.footer {
margin: 0 auto;
width: 1000px;
height: 20px;
}
.waves3 {
background: #302828;
width: 10px;
height: 10px;
border-radius: 0 0 5px 5px/0 0 3px 3px;
float: left;
margin-top: -8px;
}
.waves4 {
background: #eee;
width: 10px;
height: 10px;
border-radius: 5px 5px 0 0/3px 3px 0 0;
float: left;
margin-top: -2px;
}
</style>
</head>
<body>
<div class="header">
<?php
$x = 1;
while ($x <= 50) {
echo "<div class='waves1'></div><div class='waves2'></div>";
$x = $x + 1;
}
?>
</div>
<div class="main">
<div class="main-text">
<br>
<h1>Волнистый край на CSS3</h1><br>
Рисуем волнистые края на CSS3 без использования графики<br>
</div>
</div>
<div class="footer">
<?php
$x = 1;
while ($x <= 50) {
echo "<div class='waves3'></div><div class='waves4'></div>";
$x = $x + 1;
}
?>
</div>
</body>
</html>