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('/ * modify something * /'); }); – JoelBonetR