在Html5中下拉导航无法正常工作

时间:2013-04-25 19:52:03

标签: php css html5 wordpress

我正在创建一个Wordpress主题,并试图让导航正常工作,但我遇到了创建下拉菜单所需的一些CSS的问题。导航的列表层次结构正确生成,但仍作为无序列表而不是成为下拉列表。我试过在几个不同的浏览器中打开网站,但结果是一样的。这是php / html5:

<nav role="navigation" class="site-navigation main-navigation"></nav>
    <h1 class="assistive-text"><?php _e( 'Menu', 'shape' ); ?></h1>
    <div class="assistive-text skip-link"><a href="#content" title="<?php esc_attr_e('Skip     to content', '_s' ); ?>"><?php _e( 'Skip to content', 'shape' ); ?></a></div>
    <?php wp_page_menu('title_li=&sort_column=menu_order&show_home=1') ?>
</nav>

这是我正在使用的CSS:

.main-navigation {
    clear: both;
    display: block;
    padding: 1.5em;
}
.main-navigation:after {
    clear: both;
    content: "";
    display: block;
}
.main-navigation ul {
    list-style: none;
    margin: 0;
    padding-left: 0;
}
.main-navigation li {
    float: left;
    margin: 0.5em 0;
    position: relative;
}
.main-navigation a {
    color: #7c948a;
    display: block;
    font-size: 1.4rem;
    font-weight: bold;
    margin-right: 2em;
    text-decoration: none;
}
.main-navigation ul ul {
    background: #e9e0d1;
    border: 1px solid rgba( 0, 0, 0, 0.1 );
    display: none;
    float: left;
    position: absolute;
        top: 1.2em;
        left: 0;
    z-index: 99999;
}
.main-navigation ul ul ul {
    left: 100%;
    top: 0;
}
.main-navigation ul ul a {
    padding: 0 1.5em;
    width: 200px;
}
.main-navigation ul ul li {
}
.main-navigation li:hover > a,
.main-navigation li.current_page_item a,
.main-navigation li.current-menu-item a,
.main-navigation ul ul a:hover {
    color: #33605a;
}
.main-navigation ul ul :hover > a {
}
.main-navigation ul li:hover > ul {
    display: block;
}

/* Small menu */
.menu-toggle {
    color: #7c948a;
    cursor: pointer;
    font-size: 20px;
    font-weight: bold;
    text-align: center;
}
.main-small-navigation .menu {
    display: none;
}`

我对PHP和Html5比较陌生,所以我可能会遗漏一些简单的东西。如果我需要提供更多信息,请告诉我。

1 个答案:

答案 0 :(得分:0)

您的标记已损坏。您将关闭<nav>两次。从第一行中删除结束标记</nav>

<nav role="navigation" class="site-navigation main-navigation">
    <h1 class="assistive-text"><?php _e( 'Menu', 'shape' ); ?></h1>
    <div class="assistive-text skip-link"><a href="#content" title="<?php esc_attr_e('Skip     to content', '_s' ); ?>"><?php _e( 'Skip to content', 'shape' ); ?></a></div>
    <?php wp_page_menu('title_li=&sort_column=menu_order&show_home=1') ?>
</nav>

我假设PHP输出类似于THIS DEMO