2
이미지 위에 스케치 스타일 테두리를 설정하는 코드를 만들었습니다. 아래에서 볼 수 있습니다 는 :CSS를 사용하여 반응이 좋은 스케치 된 보더 설정
jQuery('.border').click(function(){
jQuery('.border').toggleClass('resize');
});
body {
background-color: lightblue;
}
.border {
width: 200px;
margin: 0px auto;
position: relative;
-webkit-transition: all 2s;
/* Safari */
transition: all 2s;
background-image: url(https://nosycrow.com/wp-content/themes/nosy-crow/images/borders/black-400-sides.png);
background-repeat: repeat-y;
background-size: 100%;
border-radius: 15px;
background-position: 0 0;
padding: 5px;
overflow: hidden;
}
.border .padding::before, .border .padding::after {
content: '';
display: block;
position: absolute;
left: 0;
width: 100%;
height: 0;
background: url(https://nosycrow.com/wp-content/themes/nosy-crow/images/borders/black-400.png) no-repeat;
background-size: 100%;
z-index: 50;
padding-bottom: 5.4%;
pointer-events: none;
}
.border .padding::before {
top: 0px;
}
.border .padding::after {
bottom: 0px;
background-position: 0px 100%;
}
.border.resize {
width: 500px;
}
img {
width: 100%;
height: auto;
position: relative;
border-radius: 10px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="border">
<div class="padding">
<img src="https://nosycrow.com/wp-content/uploads/imported-books/Spectre-Collectors-Too-Ghoul-For-School-312087-3-593x911.jpg" alt="">
</div>
</div>
그러나 문제는, 상자 정확하게 반응하지 않습니다. 그것을 테스트하기 위해 작은 jquery 스크립트를 추가 했으므로 이미지를 클릭하면 이미지 크기가 조정됩니다. 그리고 이미지가 더 커지면 테두리가 제대로 정렬되지 않은 것을 볼 수 있습니다.
내 솔루션에서이 문제를 해결하기 위해 미디어 쿼리에 상단과 테두리의 테두리를 조정할 수 있도록 미디어 쿼리를 추가해야한다고 알고 있습니다. 그러나 더 좋은 해결책이 있습니까?
화면 크기가 변경 될 때 일부 마진이 크기 조정에 따라 (또는 창 크기 검사) 추가 할 수 있도록 당신은, jQuery를 사용하여 테두리 속성을 수정할 수 있습니다 그것은을 수행해야합니다 장난. $ (window) .resize (function() { $ ('border') .css ('/ * 무언가를 수정하십시오 * /'); }); – JoelBonetR