Вы не упомянули, для чего вы создаете приложение, но вы в основном говорите о «представлениях», которые отображают информацию, основанную на доступе пользователя и странице, которую они просматривают.
Я процитирую страницу из угловых документов: https://docs.angularjs.org/tutorial/step_09
Чтобы добавить подробный вид, мы собираемся превратить index.html в то, что мы называем «шаблоном макета». Это шаблон, который является общим для всех представлений в нашем> приложении. Другие «частичные шаблоны» затем включаются в этот макет> шаблона в зависимости от текущего «маршрута» - представления, которое в данный момент отображается> пользователю.
BLOCKQUOTE>
IE пытается быть полезным и скрывает текстовые узлы, которые содержат только пробел.
В следующем:
<p>
<input>
</p>
спецификация W3C DOM говорит, что <p>
имеет 3 дочерних узла (" \n", <input>
и "\n"), IE притворится, что существует только один.
решение состоит в том, чтобы пропустить текстовые узлы во всех браузерах:
var node = element.firstChild;
while(node && node.nodeType == 3) node = node.nextSibling;
Популярные платформы JS имеют функции для таких вещей.
Хорошо... Я сказал бы причину это, что это - IE. Я не думаю, что у программистов было определенное намерение сделать это тот путь.
Я предполагаю, что тег таблицы отличается между браузерами.
, например, который автоволшебно содержат узлы таблица по умолчанию?
<table>
<thead>
</thead>
<tbody>
</tbody>
<tfoot>
</tfoot>
</table>
Почему не только пытаются обойти DOM и видят то, что каждый браузер думает, что документ содержит?
IE делает большую "оптимизацию" DOM. Для получения впечатления от того, на что это могло бы быть похожим, "Выбирают все", "Копия" в IE, и затем "Альтернатива Вставки" в Visual Studio, Вы получаете следующее:
<INPUT value="Submit Query" type=submit>
<INPUT value=Reset type=reset>
<INPUT type=button>
<INPUT type=text>
<INPUT value="" type=password>
<INPUT type=file>
<INPUT type=hidden>
<INPUT type=checkbox>
<INPUT type=radio>
<BUTTON type=submit></BUTTON>
<SELECT></SELECT>
<TEXTAREA></TEXTAREA>
, Таким образом, это уничтожает некоторые пустые теги и добавляет некоторые атрибуты по умолчанию.