Скругленные углы используя CSS3 (multiple backgrounds и border-radius).

Posted on Декабрь 7, 2007
Filed Under border-radius, multiple backgrounds, css3, rounded corners, css |

Скругленные углы используя CSS3

Для экспериментов взял приведенный выше макетик. Тестировал в Safari для Windows так как этот браузер понимает multiple background и border-radius.

HTML разметка.

<div class="block">
текст
</div>

Эта разметка используеться для обоих примеров.

Multiple backgrounds для скругления углов.

Изображения, которые используем

градиентный фон блока
градиентный фон
верхний правый угол
верхний правый угол
нижний левый угол
нижний левый угол

Непосредственно css

.block{
background-color:#4ea5ff;
background-image: url(bg-b-l.gif), url(bg-t-r.gif), url(bg-gr.gif);
background-repeat: no-repeat, no-repeat, repeat-x;
background-position: bottom left, right top, bottom left;
padding:20px;
margin:20px;
color:#ffffff;
}

Нужно заметить, что в background-image изображение, которое прописано первым, будет в самом верхнем “слое”, остальные будут ложиться под него, в том порядке, в котором прописаны. Градиентный фон, мы прописали самым последним, т.к. он должен быть в самом нижнем “слое”.

Порядок значений в background-repeat и background-position соответствует порядку в background-image, т.е. для изображения url(bg-gr.gif) соответствует repeat-x и bottom left. Значения разделяются запятыми.

Пример.

Border-radius для скругления углов.

Изображения, которые используем

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

Непосредственно css

.block{
background:#4ea5ff url(bg-gr.gif) repeat-x bottom left;
padding:20px;
margin:20px;
color:#ffffff;
border-top-right-radius:25px;
border-bottom-left-radius:25px;
}

Так как border-radius в том виде, в котором он написан выше, пока не поддерживаться, в реальном примере я заменил это свойство на -webkit-border-radius.

Пример.

Comments

12 Responses to “Скругленные углы используя CSS3 (multiple backgrounds и border-radius).”

  1. Nikita on Декабрь 8th, 2007 12:36 am

    Закруглённые углы вещь конечно хорошая, но чтобы применять CSS3 ещё столько ждать…
    Но тренироваться можно уже сейчас ))

    Кстати, в первом примере, для третьего бэкграунда можно писать не bottom left, а просто bottom, когда стоит repeat-x то всё равно откуда начинается градиент слева или справа. ))

  2. Dimox on Декабрь 8th, 2007 12:53 pm

    Мда… Сафари - это вещь, раз раньше других браузеров понимает CSS3.

    В Опере 9.5 тоже ожидается, кажется, полная поддержка (сейчас в проверил в бете - не работает). Вот тогда можно будет уже и попрактиковаться со многими феньками CSS3.

  3. never again on Декабрь 8th, 2007 1:06 pm
    2Nikita:
    согласен, хватит и одного bottom.)

    2Dimox:
    есть вещи, из CSS3, которые понимает пока только Opera 9.5 )

  4. Dimox on Декабрь 8th, 2007 1:09 pm

    Значит Опера тоже рулит, напару с Сафари :)

  5. Брасс on Декабрь 15th, 2007 7:50 am

    ждемс тройки с нетерпением….

  6. Агния on Декабрь 25th, 2007 5:25 am

    а долго еще ждать?!

  7. BRED on Январь 3rd, 2008 6:18 am

    а фиг его знает, когда релиз

  8. star on Январь 6th, 2008 3:27 am

    Блин, дождаться не могу :)

  9. Ромкин on Январь 13th, 2008 4:27 am

    а вы разве ждете чего-то сверхъестественного?

  10. Sergey on Январь 13th, 2008 7:41 am

    Поиск по w3c не помогает, куда они упрятали релизы?

  11. vova on Январь 18th, 2008 6:04 am

    По-моему, его ожидание совершенно оправданно :)

  12. 3al on Март 25th, 2008 3:16 pm

    Ждем нашествия webkit и оперы. Потом и FF подтянется) А на IE-юзеров хак можно будет изобрести (например, онлайн-webkit-рендеринг плагином =)

Leave a Reply




Please copy the string SOKqMo to the field below: