Почему делают / **/, комментарии работают в таблицах стилей, но//комментарии не делают?

Угловая не обеспечивает что-то встроенное для этой цели. Вы можете использовать MutationObserver для обнаружения изменений DOM.

@Directive({
  selector: '[my-skrollr]',
  ...
})
class MyComponent {
  constructor(private elRef:ElementRef) {}

  ngAfterViewInit() {
    this.observer = new MutationObserver(mutations => {
      mutations.forEach(function(mutation) {
        console.log(mutation.type);
      });   
    });
    var config = { attributes: true, childList: true, characterData: true };

    this.observer.observe(this.elRef.nativeElement, config);
  }
}

24
задан leeand00 19 March 2010 в 17:34
поделиться

6 ответов

Синтаксис комментариев в CSS: /* comment here */

// не является допустимым синтаксисом. Я предполагаю, что это позволяет CSS работать корректно при удалении из пробела и новой строки символов во время минификации .

27
ответ дан Daniel Vassallo 28 November 2019 в 22:13
поделиться

Потому что /* */ это стиль, который определен для комментариев в CSS.

Существует множество других способов написания комментариев в других средах, которые не работают в CSS, например:

//

<!-- -->

--

'

REM

{ }

;

#

12
ответ дан Guffa 28 November 2019 в 22:13
поделиться

Потому что язык CSS определен так.

1
ответ дан Tomas Aschan 28 November 2019 в 22:13
поделиться

Поскольку спецификация допускает / ** /, но не //:)

Если серьезно, CSS обрабатывает символы новой строки как все остальные пробелы и не смогут определить конец комментария без ограничивающего разделителя.

51
ответ дан 28 November 2019 в 22:13
поделиться

У разных языков разные спецификации и разные функции. В другом языке у вас могут быть комментарии, которые начинаются с символа # вместо //.

См. Спецификацию .

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

Комментарии начинаются с символов / * и заканчиваются символами * / . Они могут встречаться где-то между токенами и их содержимое не влияет на рендеринг. Комментарии не могут быть вложенными.

CSS также позволяет использовать разделители комментариев SGML ( и -> ) в определенных местах, определенных грамматикой, , но они не ограничивают комментарии CSS. Они разрешены, поэтому правила стиля , появляющиеся в исходном документе HTML (в элементе STYLE), могут быть скрыты из пользовательских агентов до HTML 3.2. Дополнительную информацию см. В спецификации HTML 4 ([HTML4]) .

Примечание: здесь не упоминаются комментарии, которые начинаются с двух косых черт и заканчиваются разрывом строки. Вот почему он не поддерживается.

2
ответ дан 28 November 2019 в 22:13
поделиться

Если вам нужен этот стиль комментариев (и множество других полезных функций, которые должны были быть в спецификации CSS), попробуйте использовать LESS CSS.

1
ответ дан 28 November 2019 в 22:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: