@kirill-93

Почему не работает style в angular?

Подскажите пожалуйста, почему пропадает атрибут style, если добавляю контент через angular?
Есть массив объектор, в которых голый html, вывожу вот так:
<div class="col-sm-6" ng-repeat="template in templates">
      <div ng-bind-html="template.template"></div>
</div>

Все выводится, все хорошо, но атрибуты style из html пропадают.
Массив объектов примерно такой:
[{
                "html"  : '<div class="row text-center"> \
                            <div class="col-xs-12"> \
                                <div class="layout" style="border: 1px solid red"> \
                                    <h1>Template 1</h1> \
                                </div> \
                            </div> \
                        </div>'
            }]


В примере выше атрибут style у тега с классом layout пропадет, если инспектировать результат. Как в таком случае передавать стили в html?
  • Вопрос задан
  • 1031 просмотр
Решения вопроса 1
@kirill-93 Автор вопроса
Нашел решение: для передачи стилей таким образом нужно их в контроллере обернуть в $sce.trustAsHtml(), предварительно передав $sce в контроллер. В противном случае ng-bind-html "очищает" разметку от инлайновых стилей
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
sim3x
@sim3x
"Предавать стили" таким образом не надо
Ответ написан
Комментировать
Для динамических стилей, которые зависят от кода ngStyle
Для всего остального только css классы ccылка
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы