gpt4 book ai didi

html - Material Design Web 1.0 和 mdc-menu-surface--anchor 怎么样?

转载 作者:行者123 更新时间:2023-11-28 14:15:21 25 4
gpt4 key购买 nike

我正在试验 Material Design Web 1.0,我的问题是如何正确使用 mdc-menu-surface--anchor这样菜单就会出现在 TopAppBar 下面?

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8"/>
<meta http-equiv="Content-Security-Policy" content="default-src 'self' https://fonts.gstatic.com; script-src 'unsafe-inline' https://unpkg.com; style-src 'unsafe-inline' https://unpkg.com https://fonts.googleapis.com"/>
<meta http-equiv="x-ua-compatible" content="ie=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Test</title>

<link href="https://unpkg.com/material-components-web@latest/dist/material-components-web.css" rel="stylesheet"/>
<script src="https://unpkg.com/material-components-web@latest/dist/material-components-web.js"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons"/>

<script type="module">
const menu = mdc.menu.MDCMenu.attachTo(document.querySelector('.mdc-menu'));
menu.open = false;
document.getElementById('button1').addEventListener('click', () => menu.open = !menu.open);
</script>
</head>
<body>
<header class="mdc-top-app-bar mdc-top-app-bar--fixed mdc-menu-surface--anchor">
<div class="mdc-top-app-bar__row">
<section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-start">
<a id="button1" href="#" class="material-icons mdc-top-app-bar__navigation-icon">menu</a>
<span class="mdc-top-app-bar__title">Test</span>
</section>
<section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-end" role="toolbar">
</section>
</div>
<div class="mdc-menu mdc-menu-surface" tabindex="-1">
<ul class="mdc-list" role="menu" aria-hidden="true" aria-orientation="vertical">
<li class="mdc-list-item" role="menuitem"><span class="mdc-list-item__text">Homepage</span></li>
<li class="mdc-list-item" role="menuitem"><span class="mdc-list-item__text">Imprint</span></li>
<li class="mdc-list-item" role="menuitem"><span class="mdc-list-item__text">Data privacy statement</span></li>
</ul>
</div>
</header>

</body>
</html>

TopAppBar 看起来像这样:

enter image description here

但是当我打开汉堡菜单时,它看起来像:

enter image description here

我希望它会在汉堡包菜单/TopAppBar 下方打开。

奖励问题:如何让它在右侧的 TopAppBar 下方打开?

最佳答案

我不确定这是否是最好的解决方案,但目前我通过以下方式解决了这个问题:

<html lang="en">
<head>
[see above]
<style>
.my-top-app-bar
{
position: static !important;
}
</style>
</head>
<body>
<header class="mdc-top-app-bar my-top-app-bar">
<div class="mdc-top-app-bar__row">
<section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-start">
<a id="button1" href="#" class="material-icons mdc-top-app-bar__navigation-icon">menu</a>
<span class="mdc-top-app-bar__title">TMS Archiv</span>
</section>
<section class="mdc-top-app-bar__section mdc-top-app-bar__section--align-end" role="toolbar">
</section>
</div>
</header>
<div class="mdc-menu-surface--anchor">
<div class="mdc-menu mdc-menu-surface" tabindex="-1">
<ul class="mdc-list" role="menu" aria-hidden="true" aria-orientation="vertical">
<li class="mdc-list-item" role="menuitem"><span class="mdc-list-item__text">Homepage</span></li>
<li class="mdc-list-item" role="menuitem"><span class="mdc-list-item__text">Imprint</span></li>
<li class="mdc-list-item" role="menuitem"><span class="mdc-list-item__text">Data privacy statement</span></li>
</ul>
</div>
</div>
</body>
</html>

重要的是以下几点:

  • .my-top-app-bar {position: static !important;} 使 mdc-top-app-bar 成为页面的一部分,不会覆盖所有其他元素。
  • 标题下方的额外 div 将成为顶部应用栏下方菜单的 anchor

关于html - Material Design Web 1.0 和 mdc-menu-surface--anchor 怎么样?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55970381/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com