1

大家好,我正在使用基础框架来构建固定导航

我的html如下

<div class="fixed">
            <div class="contain-to-grid">
                <nav class="top-bar">
                    <ul class="title-area">
                        <li class="name hide-for-medium-up"><h1><a href="#">topbar</a></h1></li>
                        <li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li>
                    </ul>                       

                    <div class="top-bar-section">
                        <ul>
                            <li><a href="#">Home</a></li>
                            <li><a href="#">about</a></li>
                            <li><a href="#">services</a></li>
                        </ul>
                    </div>
                </nav>
            </div>
        </div>

我的问题是:-我需要删除大型设备的标题区域,并且需要将顶部栏部分水平居中我通过添加 hide-for-medium-up 类删除了 h1 标签,但我无法将点击栏部分居中. 通过将 left 或 right 类应用于 top-bar-sections 的 ul 标签,可以将此部分左对齐或右对齐。但是我没有找到一种方法来将它居中,我使用以下 sass 规则。但它没有工作

.top-bar-section {
  text-align: center;
  margin: 0 auto;
  ul {
     li {
       a {
         font-size: emCalc(14px);
         font-weight: 400;
       }
     }
  }
}
4

2 回答 2

1

您需要一些媒体查询来实现这一点。

Foundation 没有提供任何便于媒体查询操作的工具,所以我建议使用Breakpoint Slicer

@import "foundation";
@import "breakpoint-slicer";

// For large devices only
@include from(4) {

  // Removing the title area for large devices
  .title-area {
    display: none;
  }

  // Centering the menu
  .top-bar-section {
    text-align: center;
    margin: 0 auto;
    ul {
      li {
        display: inline-block;
        a {
          font-size: emCalc(14px);
          font-weight: 400;
        }
      }
    }
  }

}

还要注意li { display: inline-block; }.

演示:http ://sassbin.com/gist/5780699/ (使用渲染页面面板的宽度)。

于 2013-06-14T09:46:30.323 回答
0

这是我发现适用于所有调整大小事件的最佳解决方案。它将 Foundation 5 顶栏元素居中。

请注意,'contain-to-grid' div 类会将顶部导航栏的宽度保持在网站框架内,但实际上不会使导航元素居中。

下面的代码可以。

SCSS:

nav.top-bar:not(.expanded) {
            text-align: center;
            section.top-bar-section { display: inline-block; }
                           }

HTML:

<div class="contain-to-grid">
    <nav class="top-bar" data-topbar>
        <ul class="title-area">
            <li class="name">
                <h1><a href="#"></a></h1>
            </li>
            <!-- Remove the class "menu-icon" to get rid of menu icon. Take out "Menu" to just have icon alone -->
            <li class="toggle-topbar menu-icon"><a href="#"><span>Menu</span></a></li>
        </ul>

        <section class="top-bar-section">
            <ul>
                <li><%= link_to 'LINK 1', root_path %></li>
                <li class="divider"></li>
                <li><%= link_to 'LINK2', link_path %></li>
                <li class="divider"></li>
                <li class="has-dropdown">
                    <%= link_to 'Dropping', "#" %>
                    <ul class="dropdown">
                        <li><label>Label:</label></li>
                        <li><%= link_to 'DROP 1', drop_path %></li>
                        <li class="divider"></li>
                        <li><%= link_to 'DROP 2', drop_path %></li>
                    </ul>
                </li>
            </ul>
        </section>
    </nav>
</div>
于 2014-06-16T03:35:45.840 回答