Поместить меню Wordpress Tweny Eleven на другую тему? - PullRequest
0 голосов
/ 14 сентября 2011

Это довольно специфично, но я надеюсь, что кто-то может взглянуть.

У меня есть тема видео (из Press75), и я хотел добавить хорошее выпадающее меню под областью логотипа.

Я скопировал соответствующий код и CSS (с некоторыми изменениями) в тему, и она прекрасно работает в FF, Chrome, IE9. Это не работает в IE8 или 7.

Редактировать: Извините за отсутствие объяснения. Не работает, он просто отображает меню в виде нестандартного списка, спускаясь вниз по странице и отодвигая нижнее содержимое. То, что я хочу, - это горизонтальное стилизованное меню, как оно выглядит в теме Twenty Eleven. Он отлично работает во всем, кроме IE 7 и 8.

Если есть кто-нибудь с некоторыми знаниями CSS, который мог бы просмотреть это, я был бы очень благодарен. Я в тупике и работаю над этим часами. Невозможно получить помощь от Press75 без дорогостоящих настроек.

Спасибо.

Вот URL: http://www.psychetruth.net

Вот код CSS, который в настоящее время используется для меню:

/************ MENU **************/

#access {
    background: #ececec; /* Show a solid color for older browsers */
    background: -moz-linear-gradient(#ececec, #cccccc);
    background: -o-linear-gradient(#ececec, #cccccc);
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#ececec), to(#cccccc)); /* older webkit syntax */
    background: -webkit-linear-gradient(#ececec, #cccccc);

    clear: both;
    display: block;
    float: left;
    margin: 0 auto 0;
    width: 100%;
}

#access ul {
        font: 14px/16px Times New Roman,Georgia,serif;
        letter-spacing: 0.5px;
        list-style: none;
        margin: 0;
        padding-left: 0;
    }

#access li {
    float: left;
    position: relative;
    }

#access a {
    color: #333;
    display: block;
    line-height: 3em;
    padding: 0 1.2125em;
    text-decoration: none;
    border-right: 1px solid #BBBBBB;
}

#access ul ul {
    -moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    -webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    box-shadow: 0 3px 3px rgba(0,0,0,0.2);
    display: none;
    float: left;
    margin: 0;
    position: absolute;
    top: 3em;
    left: 0;
    width: 188px;
    z-index: 99999;
}

#access ul ul ul {
    left: 100%;
    top: 0;
}

#access ul ul a {
    background: #E6E6E6;
    border-bottom: 1px dotted #ddd;
    color: #444;
    font-size: 13px;
    font-weight: normal;
    height: auto;
    line-height: 1.4em;
    padding: 10px 10px;
    width: 168px;
}


#access li:hover > a,
#access ul ul :hover > a,
#access a:focus {
    background: #f9f9f9; /* Show a solid color for older browsers */
    background: -moz-linear-gradient(#f9f9f9, #e5e5e5);
    background: -o-linear-gradient(#f9f9f9, #e5e5e5);
    background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#f9f9f9), to(#e5e5e5)); /* Older webkit syntax */
    background: -webkit-linear-gradient(#f9f9f9, #e5e5e5);
    color: #373737;
}

#access ul li:hover > ul {
    display: block;
}

#access .current_page_item > a,
#access .current_page_ancestor > a {
    font-weight: bold;
}

1 Ответ

1 голос
/ 14 сентября 2011

WordPress Twenty Eleven - это тема HTML5, использующая элемент HTML5 <nav> для своего меню.Это не будет распознаваться как элемент стиля в более старых версиях IE , и поэтому ваш стиль не работает.Версии Internet Explorer ниже IE9 просто не «видят» его.

WordPress Twenty Eleven включает файл Javascript с именем html5.js, который исправляет HTML5 с включенной поддержкой Реми Шарпом * shiv это наверх.

Для того, чтобы ваш сайт работал должным образом, вам нужно сделать одну из двух вещей:

  1. (Моя рекомендация) Ознакомьтесь с HTML5 и этим "shiv"", измените ваш DOCTYPE на тип документа HTML5 (необходимо, если вы собираетесь быть должным образом совместимым с новыми элементами, такими как <nav>), и добавьте сценарий shiv, или:
  2. (проще, но вы 'узнаем меньше) Измените элемент <nav> на <div> и внесите все необходимые исправления в CSS для соответствия.Судя по всему, все, что вам нужно сделать, это изменить <nav id="access" role="navigation"> на <div id="access" role="navigation"> (и закрывающий тег для соответствия, конечно же!) В качестве цели CSS по ID, а не по имени элемента.

Вы можете найти другие части захваченного вами кода Twenty Eleven несовместимыми с вашим текущим DOCTYPE;что бы вы ни делали, это не помешает проверить ваш HTML впоследствии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...