Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
noindex:-o-prefocus,
.needed_style {
/* цсс для оперы */
}
background-image: -webkit-gradient(linear, 0 100%, 100% 0,
color-stop(.25, rgba(0, 0, 0, .1)), color-stop(.25, transparent),
color-stop(.5, transparent), color-stop(.5, rgba(0, 0, 0, .1)),
color-stop(.75, rgba(0, 0, 0, .1)), color-stop(.75, transparent),
to(transparent)),
-webkit-gradient(linear, 0 0, 100% 100%,
color-stop(.25, rgba(0, 0, 0, .1)), color-stop(.25, transparent),
color-stop(.5, transparent), color-stop(.5, rgba(0, 0, 0, .1)),
color-stop(.75, rgba(0, 0, 0, .1)), color-stop(.75, transparent),
to(transparent));
background-image: -moz-linear-gradient(45deg, rgba(0, 0, 0, .1) 25%, transparent 25%,
transparent 50%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%,
transparent 75%, transparent),
-moz-linear-gradient(-45deg, rgba(0, 0, 0, .1) 25%, transparent 25%,
transparent 50%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%,
transparent 75%, transparent);
background-image: -o-linear-box-gradient(45deg, rgba(0, 0, 0, .1) 25%, transparent 25%,
transparent 50%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%,
transparent 75%, transparent),
-o-linear-box-gradient(-45deg, rgba(0, 0, 0, .1) 25%, transparent 25%,
transparent 50%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%,
transparent 75%, transparent);
background-image: linear-box-gradient(45deg, rgba(0, 0, 0, .1) 25%, transparent 25%,
transparent 50%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%,
transparent 75%, transparent),
linear-box-gradient(-45deg, rgba(0, 0, 0, .1) 25%, transparent 25%,
transparent 50%, rgba(0, 0, 0, .1) 50%, rgba(0, 0, 0, .1) 75%,
transparent 75%, transparent);
-webkit-background-size: 7em 7em;
-moz-background-size: 7em 7em;
background-size: 7em 7em;В определённый момент мне стало очень тоскливо смотреть на эту портянку. Фикс для IE заключается в изготовлении PNG. Для оперы — либо PNG, либо SVG. Ну и зачем эта портянка нужна, если всё равно используется PNG?.grad {
background:#e1e1e1 url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0iZyIgeDE9IjAiIHkxPSIwIiB4Mj0iMCIgeTI9IjEwMCUiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iI2ZmZiIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZTFlMSIvPjwvbGluZWFyR3JhZGllbnQ%2BPC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZykiLz48L3N2Zz4NCg%3D%3D);
background:-webkit-gradient(linear, 0 0, 0 100%, from(#fff), to(#e1e1e1));
background:-moz-linear-gradient(#fff, #e1e1e1);
}
в ie.css:
.grad {
filter:progid:DXImageTransform.Microsoft.Gradient(StartColorStr=#ffffff, EndColorStr=#e1e1e1);
}
<svg xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="g" x1="0" y1="0" x2="0" y2="100%">
<stop offset="0" stop-color="#fff"/>
<stop offset="100%" stop-color="#e1e1e1"/>
</linearGradient>
</defs>
<rect x="0" y="0" width="100%" height="100%" fill="url(#g)"/>
</svg>
У вас 20 строк кода для одного градиента (вместо одной), и если нужно что-то поменять, менять нужно, чаще всего, все их.
И ещё раз, не надо про простые градиенты. Тем более, что с горизонтальными градиентами в IE тоже проблемы.
Я дал ответ на: "… потому в больших серьезных проекта не применимо пока, собственно как и весь CSS3".Тогда я не знаю, кому вы отвечаете. Я так не думаю и такого не говорил.
Рисуем шахматную доску с помощью CSS3 градиентов