Найдите ссылки на стили, которых не существует

Есть ли инструмент, который найдет для меня все классы css, на которые я ссылаюсь в своем HTML, которые на самом деле не существуют?

т.е. если у меня есть <ul class = "topnav" /> в моем HTML, а класс topnav не существует ни в одном из упомянутых файлов CSS.

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

Это дубликат SO # 33242 stackoverflow.com/questions/33242/…

Jon Galloway 17.09.2008 06:31

Открыт снова. Извините - я не понял, что вы задавали обратный вопрос.

Jon Galloway 17.09.2008 07:14

Это оба правильные вопросы, но их можно было бы объединить, если бы они были сформулированы немного по-разному, поскольку они оба являются аспектами одной и той же проблемы. Просто мысль :)

Sam Murray-Sutton 17.09.2008 15:03

Это точная копия этого потока: stackoverflow.com/questions/135657/…

David Hobs 07.09.2011 10:33

@DavidHobs Нет, это не так. Это вопрос, противоположный тому, на который вы ссылались.

Deeksy 08.09.2011 03:01
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
1
5
453
4
Перейти к ответу Данный вопрос помечен как решенный

Ответы 4

Консоль ошибок в Firefox. Хотя он дает ошибки CSS все, так что вы должны его прочитать.

Инструмент Идея IntelliJ также делает это.

Ответ принят как подходящий

Вы можете поместить этот код JavaScript на страницу, которая может выполнить эту задачу за вас:

function forItems(a, f) {
  for (var i = 0; i < a.length; i++) f(a.item(i))
}

function classExists(className) {
  var pattern = new RegExp('\.' + className + '\b'), found = false

  try {
    forItems(document.styleSheets, function(ss) {
      // decompose only screen stylesheets
      if (!ss.media.length || /\b(all|screen)\b/.test(ss.media.mediaText))
        forItems(ss.cssRules, function(r) {
          // ignore rules other than style rules
          if (r.type == CSSRule.STYLE_RULE && r.selectorText.match(pattern)) {
            found = true
            throw "found"
          }
        })
    })
  } catch(e) {}


  return found
}

отличный фрагмент кода! Я просто схватил это, чтобы помочь мне найти классы CSS, на которые есть ссылки, которые не существуют. Конечно, проблема в том, что иногда атрибут class "перегружается", чтобы обеспечить хук JavaScript ;-), но теперь я могу по крайней мере увидеть, к каким из них не применены стили. Потрясающие!

scunliffe 08.02.2010 23:15

Это расширение Firefox делает именно то, что вы хотите.

Он находит все неиспользуемые селекторы.

Это не та проблема, которую я пытаюсь решить, я хочу найти все атрибуты классов в HTML, которые не соответствуют именам классов в CSS.

Deeksy 23.09.2008 03:58

Согласитесь с @Deeksy - я тоже однажды использовал dustmeselectors ... но он помечает то, что было определено, но использовалось где-то еще на моем сайте. Таким образом, вам необходимо собрать кучу данных с нескольких страниц, чтобы убедиться, что у вас действительно есть «мертвый» селектор. Ответ @islav - это круто.

scunliffe 08.02.2010 23:17

Другие вопросы по теме