<!DOCTYPE html> <html lang="en" > <head> <meta charset="UTF-8"> <title>基于Flexbox的响应式蜂巢样式布局</title> <link rel="stylesheet" href="css/normalize.min.css"> <style> @import url("https://fonts.googleapis.com/css?family=Montserrat:400,700"); body { font-family: 'Montserrat', sans-serif; background: #3ea0eb; } *, *::before, *::after { box-sizing: border-box; } .honeycomb { display: flex; flex-wrap: wrap; list-style: none; justify-content: center; align-items: center; max-width: 1200px; margin: 0 auto; padding: 0; -webkit-transform: translateY(34.375px); transform: translateY(34.375px); } .honeycomb-cell { flex: 0 1 250px; max-width: 250px; height: 137.5px; margin: 65.4761904762px 12.5px 25px; position: relative; padding: 0.5em; text-align: center; z-index: 1; } .honeycomb-cell__title { height: 100%; display: flex; flex-direction: column; justify-content: center; -webkit-hyphens: auto; -ms-hyphens: auto; hyphens: auto; word-break: break-word; text-transform: uppercase; color: #fff; font-weight: 700; font-size: 1.75em; transition: opacity 350ms; } .honeycomb-cell__title > small { font-weight: 300; margin-top: 0.25em; } .honeycomb-cell__image { -o-object-fit: cover; object-fit: cover; -o-object-position: center; object-position: center; } .honeycomb-cell::before, .honeycomb-cell::after { content: ''; } .honeycomb-cell::before, .honeycomb-cell::after, .honeycomb-cell__image { top: -50%; left: 0; width: 100%; height: 200%; display: block; position: absolute; -webkit-clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%); clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%); z-index: -1; } .honeycomb-cell::before { background: #fff; -webkit-transform: scale(1.055); transform: scale(1.055); } .honeycomb-cell::after { background: #3ea0eb; opacity: 0.5; transition: opacity 350ms; } .honeycomb-cell:hover .honeycomb-cell__title { opacity: 0; } .honeycomb-cell:hover::before { background: #72f88e; } .honeycomb-cell:hover::after { opacity: 0; } .honeycomb__placeholder { display: none; opacity: 0; width: 250px; margin: 0 12.5px; } @media (max-width: 550px) { .honeycomb-cell { margin: 81.25px 25px; } } @media (min-width: 550px) and (max-width: 825px) { .honeycomb-cell:nth-child(3n) { margin-right: calc(50% - 125px); margin-left: calc(50% - 125px); } .honeycomb__placeholder:nth-child(3n + 5) { display: block; } } @media (min-width: 825px) and (max-width: 1100px) { .honeycomb-cell:nth-child(5n + 4) { margin-left: calc(50% - 275px); } .honeycomb-cell:nth-child(5n + 5) { margin-right: calc(50% - 275px); } .honeycomb__placeholder:nth-child(5n), .honeycomb__placeholder:nth-child(5n + 3) { display: block; } } @media (min-width: 1100px) { .honeycomb-cell:nth-child(7n + 5) { margin-left: calc(50% - 400px); } .honeycomb-cell:nth-child(7n + 7), .honeycomb-cell:nth-child(7n + 5):nth-last-child(2) { margin-right: calc(50% - 400px); } .honeycomb__placeholder:nth-child(7n + 7), .honeycomb__placeholder:nth-child(7n + 9), .honeycomb__placeholder:nth-child(7n + 11) { display: block; } } </style> </head> <body> <ul class="honeycomb" lang="es"> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">Diseño exclusivo</div> </li> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">Impermeables</div> </li> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">Tablero doble cara</div> </li> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">Maletín de empaque</div> </li> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">Antireflectivo<small>No vidrio</small></div> </li> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">6 fichas<small>1 de repuesto</small></div> </li> <li class="honeycomb-cell"> <img class="honeycomb-cell__image" src="images/1.jpg"> <div class="honeycomb-cell__title">Tablero magnético</div> </li> <li class="honeycomb-cell honeycomb__placeholder"></li> </ul> </body> </html>
基于Flexbox的响应式蜂巢样式布局
标签:
评论者:[[ schemeInfo.user.username ]]
评论内容:[[ schemeInfo.pbody ]]
评论时间:[[ schemeInfo.ptime ]]
发表你的评论:
提交评论
上一篇:
CSS3可调节并实时预览的阴影
下一篇:
HTML5/SVG图片切换马赛克过渡动画