2015-10-12 22:04:24 +03:00
<!DOCTYPE html>
< html lang = "en" >
< head >
< meta charset = "utf-8" >
< meta name = "viewport" content = "width=device-width, initial-scale=1" >
< title > Simple Icons< / title >
< link href = 'https://fonts.googleapis.com/css?family=Lato:400,700' rel = 'stylesheet' type = 'text/css' >
< style >
html {
font-size: 16px;
}
body {
color: #666;
font-family: Lato, sans-serif;
-webkit-font-feature-settings: "dlig", "kern", "liga";
font-feature-settings: "dlig", "kern", "liga";
-webkit-font-smoothing: antialiased;
font-weight: 400;
line-height: 1.5rem;
margin: 0;
-moz-osx-font-smoothing: grayscale;
}
a {
color: #333;
}
a:focus, a:hover {
color: #999;
}
.navbar {
2015-10-13 17:11:08 +03:00
background: #EEE;
2015-10-12 22:04:24 +03:00
display: flex;
justify-content: space-between;
}
.title {
font-size: 1rem;
font-weight: 400;
letter-spacing: 0.05rem;
margin: 0;
padding: 1.5rem;
text-transform: uppercase;
}
.navbar__text {
font-size: 0.75rem;
letter-spacing: 0.05rem;
margin: 1.5rem;
text-transform: uppercase;
}
.tiles {
display: flex;
flex-wrap: wrap;
list-style: none;
margin: 1.25rem;
padding: 0;
}
.tiles__item {
box-sizing: border-box;
2015-10-13 17:11:08 +03:00
background: #333;
border: 0.25rem solid #FFF;
color: #FFF;
padding: 1.5rem;
2015-10-12 22:04:24 +03:00
width: 100%;
}
@media (min-width: 600px) { .tiles__item { width: 50%; } }
@media (min-width: 800px) { .tiles__item { width: 33.333%; } }
@media (min-width: 1000px) { .tiles__item { width: 25% } }
@media (min-width: 1200px) { .tiles__item { width: 20% } }
@media (min-width: 1500px) { .tiles__item { width: 16.666% } }
@media (min-width: 1800px) { .tiles__item { width: 12.5% } }
.footer {
margin: 3rem;
}
.footer p {
font-size: 0.75rem;
letter-spacing: 0.05rem;
margin: 0 auto;
max-width: 31.5rem;
text-align: center;
text-transform: uppercase;
}
< / style >
< / head >
< body >
< header class = "navbar" role = "banner" >
< h1 class = "title" > Simple Icons< / h1 >
< p class = "navbar__text" > Share on < a href = "#" > Facebook< / a > & < a href = "#" > Twitter< / a > < / p >
< / header >
< main role = "main" >
< ul class = "tiles" >
2015-10-13 17:11:08 +03:00
< li class = "tiles__item" data-colour = "5AB552" >
Event Store
2015-10-12 22:04:24 +03:00
< / li >
2015-10-13 17:11:08 +03:00
< li class = "tiles__item" data-colour = "3B5998" >
Facebook
2015-10-12 22:04:24 +03:00
< / li >
2015-10-13 17:11:08 +03:00
< li class = "tiles__item" data-colour = "55ACEE" >
Twitter
2015-10-12 22:04:24 +03:00
< / li >
2015-10-13 17:11:08 +03:00
< li class = "tiles__item" data-colour = "CD201F" >
YouTube
2015-10-12 22:04:24 +03:00
< / li >
< / ul >
< / main >
< footer class = "footer" role = "contentinfo" >
2015-10-13 17:11:08 +03:00
< p > Distributed for free by Dan Leech under the Free Art License. Company logos in icons are copyright of their respective owners. < a href = "#" > Coffee fund donations< / a > are greatly appreciated!< / p >
2015-10-12 22:04:24 +03:00
< / footer >
< script src = "http://code.jquery.com/jquery-1.11.3.min.js" > < / script >
< script >
$(document).ready(function() {
$(".tiles__item").each(function () {
2015-10-13 17:11:08 +03:00
// Get colour attribute as a string
var hex = $(this).data('colour') + "";
console.log(hex);
// Set tile background colour
$(this).css('background', "#" + hex);
// Calculate RGB values from hex
var red = parseInt(hex.substr(0,2), 16) / 255;
var green = parseInt(hex.substr(2,2), 16) / 255;
var blue = parseInt(hex.substr(4,2), 16) / 255;
var maxRGB = Math.max(red, green, blue);
var minRGB = Math.min(red, green, blue);
var delta = maxRGB - minRGB;
if (delta === 0) {
var hue = 0;
} else {
if (maxRGB === red) {
var hue = ((green - blue) / delta);
hue *= 60;
if (hue < 0 ) {
hue += 360;
}
} else if (maxRGB === green) {
var hue = (((blue - red) / delta) + 2);
hue *= 60;
} else {
hue = (((red - green) / delta) + 4);
hue *= 60;
}
}
// Set data attribute for hue
this.setAttribute('data-hue', hue);
// Sort by hue
$(".tiles__item").sort(sort_li) // sort elements
.appendTo('.tiles'); // append again to the list
// sort function callback
function sort_li(a, b){
return ($(b).data('hue')) > ($(a).data('hue')) ? 1 : -1;
}
});
2015-10-12 22:04:24 +03:00
});
< / script >
< / body >
< / html >