2012-05-16 56 views
-1

我希望能夠在網站上的所有圖像上疊加圖形邊框,而無需在Photoshop中手動應用它。我使用的邊框是粗糙的'心疼'圖形,因此無法通過使用css邊框來實現。在img標籤上覆蓋圖形邊框

我最初的想法是使用JavaScript動態地添加一個包含邊框圖形的周邊div(或divs)到所有img標籤,雖然我不太清楚如何做到這一點。

+0

@Joseph什麼都沒有 - 我不能想到一個CSS解決方案,正如我提到的,雖然我認爲JavaScript可能是最好的解決方案,但我不知道如何去做。 – RobM

回答

0

有使用CSS3的替代品。

例片段:

img { 
    border-width: 20px; 
    -moz-border-image:url("border.png") 20 repeat stretch; 
    -webkit-border-image:url("border.png") 20 repeat stretch; 
    border-image:url("border.png") 20 repeat stretch; 
} 

jsFiddle

參考文獻:

免責聲明:CSS3目前沒有跨瀏覽器完全支持,這種解決方案假定我們的目標繼續前進,網絡的發展爲目標的現代瀏覽器。

+1

請解釋倒票? –

-1

你應該可以用JQuery來做到這一點,我測試了這個腳本,它爲我工作。我只是給圖像一個背景圖像並添加了填充。

你會叫的JQuery在標題:

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script> 

那麼你可以試試這個腳本:

<script> 
    $(document).ready(function(){ 
     $('img').css({ 
      'background' : 'url(images/002.jpg) repeat', 
      'padding' : '10px' 
     }); 
    }); 
</script> 

你可以用你的類替換 'IMG',例如 '.border',你也可以調整填充,你只需要用你的替換背景圖片的網址即可。希望這有助於/工作!

+0

[jQuery不是所有東西的答案](http://www.doxdesk.com/img/updates/20091116-so-large.gif)。 –

1

我建議以下JavaScript:

var D = document, 
    images = D.getElements​ByTagName('img'); 

function imageWrap(el, wrapper) { 
    if (!el) { 
     return false; 
    } else { 
     var wrapper = wrapper || 'div', 
      d = D.createElement(wrapper); 
     el.parentNode.insertBefore(d, el.nextSibling); 
     d.appendChild(el); 
    } 
} 
for (var i = 0, len = images.length; i < len; i++) { 
    imageWrap(images[i]); 
} 

JS Fiddle demo

參考文獻:

0

你可以讓你的邊界作爲背景圖像,並把圖像裏面,並添加一些餘量

檢查我jsfiddle

+0

保持簡單! +1 =) –