纯CSS + 媒体查询实现网页导航效果

时间:2021-05-08

附上效果图,如果大家感觉不错,请参考实现代码:

代码如下,复制即可使用:

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Document</title> <style> body { background: #801638; } body, body > * { margin: 0; padding: 0; font-family: 'Roboto', sans-serif; font-weight: normal; } * { transition: all .3s ease 0s; } div + div article:nth-child(1) { background: #c22326; } div + div article:nth-child(2) { background: #f37338; } div + div article:nth-child(3) { background: #fdb632; } div + div article:nth-child(4) { background: #027878; } div + div article:nth-child(5), div + div { background: #801638; } html, body, div + div { width: 100vw; height: 100vh; } div + div { list-style: none; position: relative; display: flex; flex-direction: row; flex-wrap: nowrap; align-items: stretch; overflow: hidden; } div + div article { flex: initial; width: 20%; height: 100%; text-align: center; color: #fff; text-decoration: none; vertical-align: bottom; box-sizing: border-box; padding: 2vh 1vw; position: relative; } body > div:first-child { position: fixed; bottom: 8vh; background: #fff; width: 100%; text-align: center; padding: .5rem; z-index: 2; } body > div:first-child h1, body > div:first-child h2 { margin: 0; padding: 0; } div + div:hover article { flex: initial; width: 10%; } div + div article:hover { width: 60%; } article > div { opacity: 0; transition: opacity .2s ease 0; } div + div article:hover > div { opacity: 1; transition: opacity .3s ease .3s; } div + div article > h2 { bottom: 2vh; position: absolute; text-align: center; width: 100%; margin: 0; font-size: 3vh; } article div { text-align: left; width: 58vw; } article div p, article div div h2, article div h3 { margin: 0 0 1em 0; } article div p { width: 40vw; } @media (max-width: 900px) { div + div article { padding: 2vh 3vw; } div + div article > h2 { transform: rotate(90deg); bottom: 23vh; min-width: 12em; text-align: left; transform: rotate(-90deg); transform-origin: 0 0 0; opacity: 1; } div + div article:hover > h2 { opacity: 0; } article div p { width: 50vw; } article div { max-height: calc(72%); overflow-y: auto; } } </style></head><body> <div> <h1>我在这,谁敢动我。</h1> <h2>我是你们大哥的头</h2> </div> <div> <article> <h2>大哥的小弟一</h2> <div> <h3>大哥的小弟一</h3> <p>身高180</p> <p>体重120</p> </div> </article> <article>   <h2>大哥的小弟二</h2> <div> <h3>大哥的小弟二</h3> <p>身高160</p> <p>体重100</p> </div> </article> <article> <h2>大哥的小弟三</h2> <div> <h3>大哥的小弟三</h3> <p>身高175</p> <p>体重180</p> </div> </article> <article> <h2>大哥的小弟四</h2> <div>   <h3>大哥的小弟四</h3> <p>身高180</p> <p>体重110</p> </div> </article> <article> <h2>大哥的小弟五</h2> <div> <h3>大哥的小弟五</h3> <p>身高180</p> <p>体重150</p> </div> </article> </div> </body></html>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章