2013-04-02 4 views
0

ОБНОВЛЕНИЕ: Я использую программное обеспечение SiteBuilder от Yahoo, и, поскольку я подозреваю, что проблема может иметь отношение к заголовку doctype, я выполнил поиск Google для SiteBuilder. Кто-то в другом форуме предложил добавить следующее на сайт спрашивающий вВыпадающее меню CSS не работает в IE9

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 

Я пытался добавить, что в верхней части HTML моей страницы. Выпадающее меню работало в IE9, но в IE и Firefox текст, окно входа в систему и т. Д. Были заперты в верхнем левом углу экрана. Таким образом, это похоже на что-то в Doctype, но происходит что-то еще, что сдвигает все неуместно. Любые предложения, основанные на этом развитии?

Спасибо!

Начну с того, что я расскажу, что я полный новичок, когда дело доходит до этого. Поэтому, пожалуйста, простите меня, если я задаю основные вопросы или вам понадобятся слишком явные инструкции.

В принципе, я хочу добавить раскрывающееся меню навигации на свой новый сайт. Я нашел код для одного онлайн и через некоторые пробные версии и ошибки разработал, как сделать это самостоятельно. Все казалось прекрасным, пока я не тестировал его на IE9. Когда я наводил указатель на него, раскрывающийся список не выпадает. Он отлично работает в Firefox (мой основной браузер), и друг подтвердил, что он работает в Chrome.

Некоторые поисковые запросы Google позже, я вижу, что это довольно распространенная проблема. Я попытался найти работоспособное решение, но либо предлагаемые исправления не работали, либо я не совсем понимаю, о чем они говорят. Как я уже сказал, я новичок, который пытается понять этот новый язык.

Вот сайт: http://gardenstatelegacy.com/GSL2_Test_Home.html

Это работа. Ссылка «Подписаться» работает как на Firefox, так и на IE9. На вкладке «Ресурсы» должно быть раскрывающееся меню. Единственная ссылка, которая в настоящее время работает в этом раскрывающемся списке, это «Справочник консультантов». Я попробовал это, используя опцию «Совместимость» в IE9, но ничего не сделал.

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

<!DOCTYPE html> 
<html> 
    <head> 
    <style type="text/css">  
     body { 
      padding: 0; 
      margin: 0; 
     } 

     #wrap { 
      width: 100%; 
      height: 50px; 
      margin: 0; 
      z-index: 99; 
      position: relative; 
      background-color: #660000; 
     } 

     .navbar { 
      height: 50px; 
      padding: 0; 
      margin: 0; 
      position: absolute; 
      border-right: 1px solid #660000; 
     } 

     .navbar li { 
      height: 50px; 
      width: 142px; 
      float: left; 
      text-align: center; 
      list-style: none; 
      font: normal bold 12px/1.2em Arial, Verdana, Helvetica; 
      padding: 0; 
      margin: 0; 
      background-color: #660000;     
     } 

     .navbar a {       
      padding: 18px 0; 
      border-left: 1px solid #C4BD97; 
      border-right: 1px solid #C4BD97; 
      text-decoration: none; 
      color: white; 
      display: block; 
     } 

     .navbar li:hover, a:hover { 
      background-color: #660000; 
     } 

     .navbar li ul { 
      display: none; 
      height: 50px;         
      margin: 0; 
      padding: 0;        
     } 

     .navbar li:hover ul { 
      display: block;         
     } 

     .navbar li ul li { 
      background-color: #660000; 
     } 

     .navbar li ul li a { 
      border-left: 1px solid #C4BD97; 
      border-right: 1px solid #C4BD97; 
      border-top: 1px solid #C4BD97; 
      border-bottom: 1px solid #C4BD97; 
     } 

     .navbar li ul li a:hover { 
      background-color: #660000; 
     } 
    </style>        
</head> 
<body> 
    <div id="wrap"> 
     <ul class="navbar"> 
      <li><a href="#">Home</a></li> 
      <li><a href="#">Sample Issue</a></li> 
      <li><a href="http://gardenstatelegacy.com/Subscribe.html">Subscribe</a></li> 
      <li><a href="#">Resources</a> 
       <ul> 
        <li><a href="#">History Sites/Groups</a></li> 
        <li><a href="#">Speakers Bureau</a></li> 
        <li><a href="http://gardenstatelegacy.com/Professional_Directory.html">Consultant Directory</a></li> 
        <li><a href="#">Links</a></li> 
       </ul>   
      </li> 
      <li><a href="#">About GSL</a> 
       <ul> 
        <li><a href="#" >Mission Statement</a></li> 
        <li><a href="#">Who We Are</a></li> 
        <li><a href="#">News</a></li> 
       </ul>   
      </li> 
      <li><a href="#">GSL Store</a></li> 
      <li><a href="#">Advertise</a></li> 
     </ul> 
    </div> 
</body> 
</html> 

ответ

0

У меня нет для вас решение, но я подтвердил, что он не работает в IE10, но делает работу в FireFox 19 (как на ПК).

Одна вещь, которую вы можете проверить, - это тип doctype, поскольку, как известно, он вызывает проблемы с перекрестным браузером, когда дело доходит до CSS. Попробуйте установить это и посмотрите, поможет ли это.

Извините, я не мог больше помочь.

+0

Спасибо Дэйв. Как мне это сделать? Предполагаю, вы имеете в виду строку наверху? Можете ли вы предложить замену? Эй, я предупреждал, что я новичок! :) – Gordon

+0

На самом деле код, который вы вставили в свой вопрос, определенно не является кодом, отображаемым на странице. IE выполняет рендеринг в режиме quirks. Источник в IE не показывает никакого типа doctype. – Jeff

+0

Возможно, я должен добавить следующие данные. Я использую SiteBuilder для Yahoo. Выпадающее меню создается путем копирования кода для меню и вставки его в html-фрейм. Код в моем вопросе - из этого html-фрейма и определяет меню.Код для меню отображается ниже. Где будет этот тип? Благодаря! – Gordon

0

У меня была аналогичная проблема, и я помню, что я перепутал с z-index (увеличил значение) и удалил «float: left».

+0

Спасибо за предложение. Если я правильно понимаю, z-index сообщает, какие элементы перед чем. Я не думаю, что это потому, что раскрывающаяся часть видна в Firefox и Chrome. Я вытащил «float: left» и, похоже, просто поместил ссылки друг на друга, а не по ширине. Я думаю, что Дэйв, возможно, был на что-то. Кажется, проблема совместимости. – Gordon

+0

это причуда в ie9, но кодирование css - это все об обработке причуд (к сожалению). IE известен тем, что ведет себя по-разному (даже между версиями). Хотя, кажется, все лучше. – ptutt

+0

правильный. Z-index контролирует, какой элемент отображается перед ним. Чем выше z-индекс, тем выше будет элемент. У меня была аналогичная проблема, но список меню не отображался над таблицей. Вы также можете играть с удалением «абсолютной» настройки. Извините, что неспецифичен, но у меня нет доступа к моему коду. – ptutt