首页 > 解决方案 > 如何切换多个浮动右元素的顺序?

问题描述

我在网站的导航栏中添加了一个汉堡菜单按钮,用于较小的屏幕。按钮向右浮动。但是,我还希望我的暗模式按钮浮动到右侧,但浮动到汉堡菜单的左侧

当前的

当前位置,在屏幕右侧一直显示暗模式按钮

期望的

所需位置,一直显示汉堡菜单按钮到屏幕右侧

HTML

<header class="header">
    <a href="index.html" class="logo">My Logo</a>
    <a href="../dark/index.html"><img src="images/moon.png" id="styleSwitch"></a>
    <nav role="navigation">
        <input class="menu-btn" type="checkbox" id="menu-btn" />
    <label class="menu-icon" for="menu-btn"><span class="nav-icon"></span></label>
        <ul class="menu">
            <li><a href="page.html">page</a></li>
            <li><a href="page.html">page</a></li>
            <li><a href="page.html">page</a></li>
            <li><a href="page.html">page</a></li>
        </ul>
    </nav>
</header>

CSS

(从编辑器粘贴由于某种原因搞砸了一些缩进)。

    @media (max-width:1024px) {

      nav {
        min-height: 3.5rem;
      }

        a {
            outline: none;
            -webkit-tap-highlight-color: rgba(0,0,0,0);
        }

        a:active {
            color: black;
        }

        a:hover {
            background: unset;
            -webkit-background-clip: unset;
            -webkit-text-fill-color: unset;
            cursor: auto;
            transition: unset;
        }

      h1 {
        font-size: 40px;
      }

      h4, h3 {
        font-size: 25px;
      }

      footer {
        line-height: 1.8em;
      }

        .container {
            width:97%;
            max-width: 90%;
        }

      #styleSwitch {
        float: right;
      }

      #banner {
        font-size: 1.5rem;
        padding-left: .8rem;
        text-align: left;
      }
}

    @media (min-width:900px) {
      .header li {
        float: left;
      }
      .header li a {
        padding: 15px 30px;
      }
      .header .menu {
        clear: none;
        float: right;
        max-height: none;
      }
      .header .menu-icon {
        display: none;
      }
}

标签: htmlcssmobile

解决方案


推荐阅读