Форматирование неупорядоченного списка, чтобы он не отступал как абзац

#javascript #jquery #html #css #jquery-tocify-js

#javascript #jquery #HTML #css #jquery-tocify-js

Вопрос:

Я использую jQuery.tocify.js плагин javascript для программной генерации оглавления. Однако у меня возникла небольшая проблема. Способ работы плагина заключается в том, что он извлекает каждый h1 , h2 , h3 , и т.д. тег и создает вложенный список, соблюдая глубину.

Проблема, с которой я сталкиваюсь, заключается в том, что если у меня есть h2 с длинной строкой, форматирование в оглавлении получается «неправильным». В частности, первая строка элемента списка является вложенной, но содержимое передается как абзац:

Заголовок верхнего уровня

Дополнительный заголовок с

длинный заголовок

Еще один дополнительный заголовок

Извините за плохое приближение, но я надеюсь, что оно передает то, что я вижу.

Есть ли какой-либо способ настроить элементы списка так, чтобы отступ всего вторичного заголовка был одинаковой глубины, чтобы он получался (приблизительно) как:

Заголовок верхнего уровня

Дополнительный заголовок с

длинный заголовок

Вот пример сгенерированного оглавления (с длинным именем):

 <ul id="tocify-header7" class="tocify-header nav nav-list">
  <li class="tocify-item active" data-unique="the-fifth-(and-successful)-try" style="cursor: pointer;"><a>The Fifth (and Successful) Try</a></li></ul>
 

Похоже nav , и nav-list предполагается, что он поступает из Bootstrap, но я не уверен, что у Bootstrap3 даже есть nav-list класс.

Редактировать: Да, похоже, что плагин несовместим с Bootstrap 3. Полагаю, я буду искать другой плагин.

Комментарии:

1. Боюсь, что без какого-либо HTML или CSS ваш вопрос остается без ответа. То, что вы хотите, — это поведение по умолчанию, поэтому я не уверен, что делает плагин: jsbin.com/tajateju/1/edit

2. Достаточно справедливо. Все это генерируется динамически. Позвольте мне посмотреть, что я могу найти.

3. Просмотрите его с помощью DOM-инспектора вашего браузера и просто скопируйте HTML. Я знаю, что инструменты разработчика Chrome позволяют вам это сделать.

Ответ №1:

Вы должны отображать привязки в виде блоков и устанавливать для них максимальную ширину. Это должно заставить их зацикливаться при закрытии, но сохранять все это с тем же отступом.