Это прекрасно работает в DIV, но IMG не будет работать, потому что он перекрывает область, где применяются внутренние границы. К счастью, есть очень простой способ обойти это: содержать IMG внутри DIV.
<div><img src="pic.jpg" alt="1" height="200" width="200" /></div>
И применить стили:
img {border: 2px solid red;}
div {border: 3px solid black; width:204px; height:204px;}
Хотя вам не нужно явно устанавливать высоту / ширину img в вашем HTML, вам все равно нужно знать, что они из себя представляют, поскольку высоту / ширину DIV вычисляют следующим образом: div h = img h + img borderx2; div w = img w + img borderx2