css grid layout with Mars Reconnaissance Orbiter images (HiRISE)
3D css effect via https://codepen.io/donovanh/pen/GBIiv
A Pen by Lisa Ballard on CodePen.
<script id="template" type="x-tmpl-mustache"> | |
<section class="stage"> | |
<figure class="ball" | |
style = "background: url('{{ imgUrl }}') repeat-x;" | |
><span class="shadow"></span></figure> | |
</section> | |
</script> | |
<ul> | |
<li><img src="images_400x400/ESP_013368_1885.jpg"></li> | |
<li><img src="images_400x400/ESP_013954_1780.jpg"></li> | |
<li><img src="images_400x400/ESP_014185_1095.jpg"></li> | |
<li><img src="images_400x400/ESP_014351_1995.jpg"></li> | |
<li><img src="images_400x400/ESP_016700_2075.jpg"></li> | |
<li><img src="images_400x400/ESP_017154_1390.jpg"></li> | |
<li><img src="images_400x400/ESP_017174_1730.jpg"></li> | |
<li><img src="images_400x400/ESP_019753_2000.jpg"></li> | |
<li><img src="images_400x400/ESP_020065_1335.jpg"></li> | |
<li><img src="images_400x400/ESP_020087_1515.jpg"></li> | |
<li><img src="images_400x400/ESP_020090_1985.jpg"></li> | |
<li><img src="images_400x400/ESP_020782_1610.jpg"></li> | |
<li><img src="images_400x400/ESP_020795_2025.jpg"></li> | |
<li><img src="images_400x400/ESP_020798_2040.jpg"></li> | |
<li><img src="images_400x400/ESP_021676_1430.jpg"></li> | |
<li><img src="images_400x400/ESP_021915_1005.jpg"></li> | |
<li><img src="images_400x400/ESP_022405_1910.jpg"></li> | |
<li><img src="images_400x400/ESP_026086_2115.jpg"></li> | |
<li><img src="images_400x400/ESP_027077_1785.jpg"></li> | |
<li><img src="images_400x400/ESP_027339_2060.jpg"></li> | |
<li><img src="images_400x400/ESP_027834_1755.jpg"></li> | |
<li><img src="images_400x400/ESP_027989_1425.jpg"></li> | |
<li><img src="images_400x400/ESP_028004_1825.jpg"></li> | |
<li><img src="images_400x400/ESP_028020_2560.jpg"></li> | |
<li><img src="images_400x400/ESP_028269_1755.jpg"></li> | |
<li><img src="images_400x400/ESP_028335_1755.jpg"></li> | |
<li><img src="images_400x400/ESP_028575_1890.jpg"></li> | |
<li><img src="images_400x400/ESP_028799_1565.jpg"></li> | |
<li><img src="images_400x400/ESP_029226_1670.jpg"></li> | |
<li><img src="images_400x400/ESP_030373_1755.jpg"></li> | |
<li><img src="images_400x400/ESP_031944_1790.jpg"></li> | |
<li><img src="images_400x400/ESP_032011_1425.jpg"></li> | |
<li><img src="images_400x400/ESP_032078_1420.jpg"></li> | |
<li><img src="images_400x400/ESP_032522_1345.jpg"></li> | |
<li><img src="images_400x400/ESP_032562_1670.jpg"></li> | |
<li><img src="images_400x400/ESP_032836_1790.jpg"></li> | |
<li><img src="images_400x400/ESP_033014_2260.jpg"></li> | |
<li><img src="images_400x400/ESP_033108_1800.jpg"></li> | |
<li><img src="images_400x400/ESP_033242_1845.jpg"></li> | |
<li><img src="images_400x400/ESP_033242_2315.jpg"></li> | |
<li><img src="images_400x400/ESP_033243_2165.jpg"></li> | |
<li><img src="images_400x400/ESP_033248_1520.jpg"></li> | |
<li><img src="images_400x400/ESP_033252_2070.jpg"></li> | |
<li><img src="images_400x400/ESP_033264_1640.jpg"></li> | |
<li><img src="images_400x400/ESP_033293_1755.jpg"></li> | |
<li><img src="images_400x400/ESP_033297_1745.jpg"></li> | |
<li><img src="images_400x400/ESP_033371_1080.jpg"></li> | |
<li><img src="images_400x400/ESP_033433_2650.jpg"></li> | |
<li><img src="images_400x400/ESP_033483_1805.jpg"></li> | |
<li><img src="images_400x400/ESP_033556_1890.jpg"></li> | |
<li><img src="images_400x400/ESP_033564_1405.jpg"></li> | |
<li><img src="images_400x400/ESP_033565_1945.jpg"></li> | |
</ul> |
css grid layout with Mars Reconnaissance Orbiter images (HiRISE)
3D css effect via https://codepen.io/donovanh/pen/GBIiv
A Pen by Lisa Ballard on CodePen.
$(function() { | |
$("li").each(function(index) { | |
var base_url = "https://s3-us-west-1.amazonaws.com/marsfromspace.com/" | |
var imgUrl = $(this).find("img")[0].src.split('/').pop(); | |
view = { imgUrl: base_url + imgUrl }; | |
var output = Mustache.render($("#template").html(), view); | |
$(this).html(output); | |
}); | |
}); |
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.js"></script> | |
<script src="https://cdnjs.cloudflare.com/ajax/libs/mustache.js/2.3.0/mustache.js"></script> |
$background-color: black; | |
// $container-size: 8rem; // 127px; // 106px; | |
$ball-size: 9rem; | |
$grid-gap: 1rem; | |
html * { | |
margin: 0; | |
padding: 0; | |
background-color: $background-color; | |
} | |
body { | |
height: 100%; | |
} | |
/* grid layout */ | |
ul { | |
display: grid; | |
grid-template-columns: repeat(auto-fit, minmax($ball-size, 2fr)); | |
grid-gap: $grid-gap; | |
// grid-auto-rows: $container-size; | |
// grid-auto-columns: $container-size; | |
} | |
ul > li { | |
padding: 0; | |
margin: 0; | |
list-style-type: none; | |
} | |
// sphere effect | |
// below is thanks to https://codepen.io/donovanh/pen/GBIiv | |
.ball { | |
// display: block; | |
width: $ball-size; | |
height: $ball-size; | |
margin: 0; | |
padding: auto; | |
border-radius: 50%; | |
position: relative; | |
-webkit-transform-style: preserve-3d; | |
background-size: auto 50%; | |
background: url("http://127.0.0.1:8080/marsgrid/images_400x400/ESP_013368_1885.jpg") | |
repeat-x; | |
} | |
.ball:before { | |
content: ""; | |
position: absolute; | |
top: 0%; | |
left: 0%; | |
width: 100%; | |
height: 100%; | |
border-radius: 50%; | |
box-shadow: -40px 10px 70px 10px rgba(0, 0, 0, 0.8) inset; | |
z-index: 2; | |
} | |
.ball:after { | |
content: ""; | |
position: absolute; | |
border-radius: 50%; | |
width: 100%; | |
height: 100%; | |
top: 0; | |
left: 0; | |
-webkit-filter: blur(0); | |
opacity: 0.3; | |
background: radial-gradient( | |
circle at 50% 80%, | |
#81e8f6, | |
#76deef 10%, | |
#055194 66%, | |
#062745 100% | |
); | |
} | |
.ball .shadow { | |
position: absolute; | |
width: 100%; | |
height: 100%; | |
background: radial-gradient( | |
circle at 50% 50%, | |
rgba(0, 0, 0, 0.4), | |
rgba(0, 0, 0, 0.1) 40%, | |
rgba(0, 0, 0, 0) 50% | |
); | |
} | |
.stage { | |
-webkit-perspective: 1200px; | |
-moz-perspective: 1200px; | |
-ms-perspective: 1200px; | |
-o-perspective: 1200px; | |
perspective: 1200px; | |
-webkit-perspective-origin: 50% 50%; | |
-moz-perspective-origin: 50% 50%; | |
-ms-perspective-origin: 50% 50%; | |
-o-perspective-origin: 50% 50%; | |
perspective-origin: 50% 50%; | |
} |