HTML5 details/summary悬浮菜单效果实例页面
回到相关文章 »效果:
这里放一段文字表明上面的是悬浮效果。
代码:
CSS代码:
/* 隐藏默认三角 */ ::marker { font-size: 0; } summary { display: inline-block; padding: 5px 28px; text-indent: -15px; user-select: none; position: relative; z-index: 1; } summary::after { content: ''; position: absolute; width: 12px; height: 12px; margin: 4px 0 0 .5ch; background: url(./arrow-on.svg) no-repeat; background-size: 100% 100%; transition: transform .2s; } [open] summary, summary:hover { background-color: #fff; box-shadow: inset 1px 0 #ddd, inset -1px 0 #ddd; } [open] summary::after { transform: rotate(180deg); } [open] summary::before { content: ''; position: fixed; left: 0; right: 0; top: 0; bottom: 0; } .box { position: absolute; border: 1px solid #ddd; border-top: 0; background-color: #fff; min-width: 100px; padding: 5px 0; z-index: 1; } .box a { display: block; padding: 5px 10px; color: inherit; } .box a:hover { background-color: #f0f0f0; } .box sup { position: absolute; color: #cd0000; font-size: 12px; margin-top: -.25em; }
HTML代码:
<div class="bar"> <details> <summary>我的消息</summary> <div class="box"> <a href>我的回答<sup>12</sup></a> <a href>我的私信</a> <a href>未评价订单<sup>2</sup></a> <a href>我的关注</a> </div> </details> </div> <p>这里放一段文字表明上面的是悬浮效果。</p>