2015-09-06 121 views
0

任何想法如何做到這一點與CSS的幫助? 第二個(藍色邊框)是帶有以下內容的圖像:懸停。圖像懸停邊框

我想到了另一個圖像,最後一個帶有邊框。

enter image description here

+2

看到你的代碼可能會有所幫助。 – j08691

+0

可能的重複 - http://stackoverflow.com/questions/8452739/css-inset-borders –

回答

1

邊框總是在元素外......沒有「插入邊界「 選項。

另一種方法是插入框陰影。

div { 
 
    display: inline-block; 
 
    width: 200px; 
 
    height: 200px; 
 
    background-image: url(http://lorempixel.com/output/food-q-c-200-200-3.jpg); 
 
    border-radius:16px; 
 
    box-shadow: inset 0 0 0 15px rgba(255,255,255,0.5); 
 
    transition:box-shadow 0.5s ease; 
 
} 
 

 
div:hover { 
 
    box-shadow: inset 0 0 0 15px rgba(0,0,155,1); 
 
}
<div> 
 
</div>

編輯:

內半徑選項需要另一個元素。在這個例子中,我使用了一個僞元素。

* { 
 
    -webkit-box-sizing: border-box; 
 
    -moz-box-sizing: border-box; 
 
    box-sizing: border-box; 
 
} 
 

 
div { 
 
    display: inline-block; 
 
    width: 200px; 
 
    height: 200px; 
 
    background-image: url(http://lorempixel.com/output/food-q-c-200-200-3.jpg); 
 
    border-radius:16px; 
 
    position: relative; 
 
    overflow: hidden; 
 
} 
 

 
div::after { 
 
    content: ''; 
 
    position: absolute; 
 
    border-radius:16px; 
 
    top:12px; 
 
    left: 12px; 
 
    height: calc(100% - 25px); 
 
    width: calc(100% - 25px); 
 
    z-index: 1; 
 
    background: transparent; 
 
    box-shadow: 0 0 0 32px rgba(255,255,255,0.8); 
 
} 
 

 
div:hover:after { 
 
    box-shadow: 0 0 0 24px rgba(0,0,155,1); 
 
}
<div></div>

+0

謝謝! almoust,但它沒有圓角 – SERG

+0

添加了第二個選項。 –

+0

哇!看起來像魔術。非常感謝你。 – SERG

0

用默認顏色設置邊框。然後IMG:懸停{} ---

<div> 
<img src="http://dummy-images.com/abstract/dummy-480x270-Bottles.jpg"> 
</div> 

CSS

img{border:10px solid rgba(0,0,0,0.8);border-radius:8px;} 
img:hover{border:10px solid blue;} 

檢查Demo