Skip to content

Instantly share code, notes, and snippets.

@Maik-Wi
Created December 24, 2021 01:29
Show Gist options
  • Save Maik-Wi/2cb5561024e3ffaae4ef531af74cc3c0 to your computer and use it in GitHub Desktop.
Save Maik-Wi/2cb5561024e3ffaae4ef531af74cc3c0 to your computer and use it in GitHub Desktop.
Adaptive Image Background
<body class="custom-background">
<div id="content" class="site-content container">
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<article id="" class="hentry">
<header class="entry-header">
<div class="post-thumb-container">
<div class="image-wrapper" data-color="rgb(59,44,41)" data-colored="1" style="background: rgb(59, 44, 41);">
<div class="inner">
<img src="https://images.unsplash.com/photo-1561419060-1850e1f5f5b9?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=900&q=60" data-adaptive-background="1" >
</div>
</div>
</div>
</header>
</article>
</main>
</div>
</div>
</body>
$(document).ready(function(){
$.adaptiveBackground.run({
normalizeTextColor: true,
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery.adaptive-backgrounds/1.0.3/jquery.adaptive-backgrounds.js"></script>
html,body {margin: 0;padding: 0;}
body * {box-sizing: border-box;}
.container {max-width: 1140px;}
#primary, #secondary {
margin-left: auto;
margin-right: auto;
width: 100%;
}
article, main, {display: block;}
.post-thumb-container {
position: relative;
overflow: hidden;
}
.post-thumb-container img {
display: block;
margin: 0px auto;
vertical-align: middle;
}
img {
max-width: 100%;
height: auto;
width: auto;
box-sizing: border-box;
}
@mixin aspect-ratio($width, $height) {
position: relative;
&:before {
display: block;
content: "";
width: 100%;
padding-top: ($height / $width) * 100%;
}
> .image-wrapper {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
}
.post-thumb-container {@include aspect-ratio(16, 9);}
.image-wrapper {text-align: center;}
.image-wrapper .inner, .image-wrapper .default {
width: 100%;
height: 100%;
position: relative;
overflow: hidden;
}
.image-wrapper .inner:after, .image-wrapper .inner:before {
content: '';
position: absolute;
top: 33%;
left: 0%;
width: 100%;
height: 100%;
z-index: 1;
background: rgba(255, 255, 255, 0.05);
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg);
}
.image-wrapper .inner:after {
-webkit-transform: rotate(135deg);
-moz-transform: rotate(135deg);
-ms-transform: rotate(135deg);
-o-transform: rotate(135deg);
transform: rotate(135deg);
}
.image-wrapper img {
height: 100% !important;
display: inline-block;
z-index: 2;
position: relative;
z-index: 10;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment