2015-12-01 6 views
0

Я пытаюсь составить список содержимого на моей странице статьи, но мой валидатор говорит мне, что <ol> и <ul> не могут быть дочерними элементами другого <ol> или <ul>.Как я могу сделать подразделы в списке содержимого?

Есть ли способ включить это в содержание без моего кодирования с ошибками?

Моя текущая разметка, как это:

<!DOCTYPE html> 
<head> 
    <title></title> 
    <meta charset="UTF-8"> 
</head> 
<body> 
    <h2>Contents</h2> 
    <div> 
     <ol>1 
      <ol>1.1 
      </ol> 
      <ol>1.2 
      </ol> 
      <ol>1.1.1 
      </ol> 
     </ol> 
    </div> 
</body> 
</html> 

Спасибо, Майк

+0

Вам действительно нужно, чтобы узнать о упорядоченном списке. Ваша разметка неверна. 'ol' используется как контейнер. Вам нужно иметь 'li' внутри этого контейнера для вашего другого контента. Вы должны закрыть каждый 'ol' и каждый' li', который вы используете. См. Http://www.w3schools.com/tags/tag_ol.asp – morgul

ответ

2

Каждый ol элемент может содержать только li теги. Если вы хотите, чтобы списки гнездовых вы должны использовать эту структуру:

<!DOCTYPE html> 
<head> 
<title></title> 
<meta charset="UTF-8"> 
</head> 
<body> 
    <h2>Contents</h2> 
    <div> 
     <ol> 
      <li> 
       <span>1</span>  
       <ol> 
        <li>1.1</li> 
        <li>1.2</li> 
        <li> 
         <ol> 
          <li>1.2.1</li> 
          <li>1.2.2</li> 
         </ol> 
        </li> 
        <li>1.3</li> 
       </ol> 
      <li> 
      <li> 
       <span>2</span>  
       <ol> 
        <li>2.1</li> 
        <li>2.2</li> 
        <li>2.3</li> 
       </ol> 
      </li> 
     </ol> 
    </div> 
</body> 
</html> 
+0

Спасибо, теперь он выглядит лучше. Единственная проблема - это номера для товаров под , но нет для категории под . Любая идея, как это решить? – MiketheCoder

+0

Просто повторите структуру ... Правило всегда находится внутри ol. Но внутри ли вы можете поставить все, что хотите, поскольку оно ведет себя как div. В любом случае, если вы используете ol, вы должны получить номера автоматически, не так ли? – Vi100

+0

Да, я скопировал шаги, и мои номера появляются автоматически, однако в пунктах 1., 5. и 6. следуют пробелы, тогда как 2., 3., 4., 1.1 и 1.2 (в первом подразделе) и 1.1.1 (во втором подразделе) имеют названия. Также мой валидатор дает мне ошибки для незакрытых элементов – MiketheCoder

0

Ваш <ol> просто объявляет о начале нового упорядоченного списка, так что все внутри вашего списка, вы хотите разместить в элемент списка, <li>.

<!DOCTYPE html> 
<head> 
    <title></title> 
    <meta charset="UTF-8"> 
</head> 
<body> 
    <h2>Contents</h2> 
    <div> 
    <ol> 
     <li>1</li> 
     <li>1.1</li> 
     <li>1.2</li> 
     <li>1.1.1</li> 
    </ol> 
    </div> 
</body> 
</html> 

В качестве альтернативы, вы можете использовать <ul> вместо <ol>, чтобы получить маркированный список, а не пронумерованы.