2015-03-31 2 views
2

Я хочу создать радиус границы вставки для изображения, используя CSS, если это возможно, я отправляю этот вопрос, потому что все решения, которые я нашел в Интернете, до сих пор были для текста и использования div.Вставить граничный радиус для изображения

Вот что я хочу добиться:

enter image description here

Спасибо!

+0

В CSS 4-го уровня мы можем использовать ['corner-shape: scoop'] (http://dev.w3.org/csswg/css-backgrounds-4/#corner-shaping). Но он не реализован в известных веб-браузерах с момента написания. –

+0

Это не помогает мне тогда Hashem :) – odedta

+2

Возможно, не сегодня и не завтра .., но иногда и для остальной жизни :-) –

ответ

3

Один из способов:

<div class="container"> 
    <div class="dot1"></div> 
     <div class="dot2"></div> 
     <div class="dot3"></div> 
     <div class="dot4"></div> 
    <img src='http://placehold.it/400x300'> 
</div> 

CSS:

.container { 
    position:relative; 
    margin:50px auto; 
    width:400px; 
} 
.dot1 { 
    background-color:white; 
    width:50px; 
    height:50px; 
    border-radius:100%; 
    position:absolute; 
    left:-25px; 
    top:-25px; 
} 
.dot2 { 
    background-color:white; 
    width:50px; 
    height:50px; 
    border-radius:100%; 
    position:absolute; 
    right:-25px; 
    top:-25px; 
} 
.dot3 { 
background-color:white; 
    width:50px; 
    height:50px; 
    border-radius:100%; 
    position:absolute; 
    right:-25px; 
    bottom:-25px; 
} 

.dot4 { 
background-color:white; 
    width:50px; 
    height:50px; 
    border-radius:100%; 
    position:absolute; 
    left:-25px; 
    bottom:-25px; 
} 

Демо: http://jsfiddle.net/ofejxfj6/

Вы можете настроить его немного (размер кругов/точек и размеров), но это довольно закрыть, ИМХО.

+0

Я видел, как вы положили белый фон, можно ли сделать его прозрачным? Я попробовал, но видел, что эффект был утерян, и я понимаю, почему, конечно ... вы просто покрываете эти части белым фоном. Я предполагаю, что нет другого пути? О, и что означает радиус границы: 100%? – odedta

+1

Есть, вероятно, лучшие способы, это прямолинейно - и да ... 50% для границ - это нормально, но браузеры выполняют свою работу, если он установлен на 100%, тоже ... :) – sinisake

+0

@odedta if вы хотите, чтобы он был прозрачным, вам нужно заглянуть в маскировку: https://css-tricks.com/clipping-masking-css/ –

Смежные вопросы