이전 튜토리얼 "HTML5연습 - css3 이미지 스타일"에서 box-shadow와 border-radius를 사용하여 이미지에 배경 이미지 패키징을 추가하는 방법을 소개했습니다. 이미지 만들기 다양한 스타일을 설정해 관심 있는 친구들이 다시 읽어볼 수 있습니다. 그런데 최근 PhotoTouch 테마를 디자인할 때 배경 이미지 크기를 조정할 수 없어 반응형 디자인에 적합하지 않은 문제가 발생했습니다. 오늘 우리는 문제를 해결하려고 노력할 것입니다.
대부분의 브라우저는 이미지의 테두리 반경 및 포함된 상자 그림자 효과를 완벽하게 렌더링하지 않습니다. 즉, 이미지에 엠보싱, 하이라이트, 압축 등의 효과를 만들 수 없습니다.
이전 솔루션에서는 이미지 속성 를 추가했습니다. 🎜>는 위의 문제를 해결합니다.
jquery는 #demo 아래의 모든 이미지를 쿼리한 다음 동적으로 만듭니다. 스팬 포장을 추가합니다.
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5/jquery.min.js"></script> <script type="text/javascript">$(document).ready(function(){ $('#demo img').each(function() { var imgClass = $(this).attr('class'); $(this).wrap('<span class="image-wrap ' + imgClass + '" style="width: auto; height: auto;"/>'); $(this).removeAttr('class'); }); });</script>
<span class="image-wrap " style="width: auto; height: auto;"> <img src="image.jpg"></span>
CSS 기법은 매우 간단합니다. 마스크 효과는 .image-wrap:after에 사용되며, border-radius는 이미지와 .image-wrap:after 모두에 사용되어 스타일 효과를 얻습니다.
.image-wrap { position: relative; display: inline-block; max-width: 100%; vertical-align: bottom; }.image-wrap:after { content: ' '; width: 100%; height: 100%; position: absolute; top: -1px; left: -1px; border: solid 1px #1b1b1b; -wekbit-box-shadow: inset 0 0 1px rgba(255,255,255,.4), inset 0 1px 0 rgba(255,255,255,.4), 0 1px 2px rgba(0,0,0,.3); -moz-box-shadow: inset 0 0 1px rgba(255,255,255,.4), inset 0 1px 0 rgba(255,255,255,.4), 0 1px 2px rgba(0,0,0,.3); box-shadow: inset 0 0 1px rgba(255,255,255,.4), inset 0 1px 0 rgba(255,255,255,.4), 0 1px 2px rgba(0,0,0,.3); -webkit-border-radius: 7px; -moz-border-radius: 7px; border-radius: 7px; }.image-wrap img { vertical-align: bottom; -webkit-box-shadow: 0 1px 2px rgba(0,0,0,.4); -moz-box-shadow: 0 1px 2px rgba(0,0,0,.4); box-shadow: 0 1px 2px rgba(0,0,0,.4); -webkit-border-radius: 6px; -moz-border-radius: 6px; border-radius: 6px; }
위 내용은 HTML5 실습 - CSS3를 사용하여 이미지 스타일을 풍부하게 하는 방법에 대한 자세한 설명(2)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!