1. Куча / Говнокод #22107

    −31

    1. 1
    2. 2
    3. 3
    4. 4
    .content img[style*="float:left"], .content img[style*="float: left"] {
        margin: 0 20px 20px 0;
        margin: 0 1.25rem 1.25rem 0;
    }

    Я видел много дерьма в верстке от индусов и украинских школьников, но это заслуживает отдельного упоминания.

    Запостил: zooks, 02 Февраля 2017

    Комментарии (16) RSS

    • Это CSS
      Ответить
    • img[style*="float: left"] {
          float: right;
      }
      Ответить
      • img[style*="float: left"] {
            float: right !important;
        }


        потомушо инлайновые стили приоритетнее
        Ответить
        • > !important
          Всегда читаю эту херню как "not important".
          Ответить
          • Вот что сишный синтаксис делает...

            Вообще я за то, чтобы ввести для CSS испанскую пунктуацию, тогда будет понятнее:
            float: right ¡important!;
            Ответить
            • И ¿important?, если верстала сомневается, так уж ли важно это правило.
              Ответить
      • А рекурсию на CSS можно сделать?
        Ответить
        • На LESS/SASS, скорее всего, можно. В IE, используя behavior(), тоже можно нахулиганить.

          А на чистом CSS вряд ли. Он не может подменять атрибуты HTML-элементов, включая class и инлайновые стили, поэтому в селекторы нагадить не получится.

          Есть интересная вещь — автогенерация контента с помощью псевдоклассов :before и :after, свойства content и функции data(), но сгенерировать можно только чистый текст без HTML, поэтому рекурсию к генереции применить не получится.
          Ответить
          • Кстати, а сгенерированные элементы доступны через DOM?
            Ответить
            • before и after вроде нет, по крайней мере я как-то с этим ебался
              Ответить
            • Что мешает достать по id, name или class на крайняк?
              Ответить
              • Покажите пример кода, пожалуйста.
                Ответить
                • Например? https://jsfiddle.net/338uj88n/
                  Ответить
                  • Но мы же здесь изменяем только свойства (в данном случае class) «породившего» их элемента (при наведении на жёлтый цвет зелёного тоже меняется).

                    Вопрос в том, можно ли получить доступ к конкретному сгенерированному элементу. Например, сделать что-то с жёлтым, не трогая зелёный.
                    Ответить
                    • Убрать хувер в кваревском коде для зелёного (класс red) и меняться будет только жёлтый.

                      Если имеется в виду прямой доступ к :before и :after без применения дополнительных классов (pink и red, в случае примера), то так, к сожалению, нельзя. Навроде. По крайней мере у меня не выходило получить к ним прямой доступ. Хотя, допустим, можно пострадать динамической заменой CSS. Но тут я не подсказчик, ибо так ещё не извращался. :)
                      Ответить
    • Ну... человек по крайней мере умеет в CSS-селекторы.
      Ответить

    Добавить комментарий