Я просто хотел услышать некоторые полномочия на том, когда и где необходимо использовать a LITERAL
управление a LABEL
.
Насколько я понимаю различие - это: A LABEL
может быть разработан через <SPAN>
теги, которые добавляются.
Я лично нахожу добавление <SPAN>
теги в моем HTML, чтобы быть очень раздражающим и никогда на самом деле применить стили через ASP, и таким образом, LITERAL
s, кажется, то, что должно использоваться большая часть времени..., но я обеспокоен, что существуют другие соображения или преимущества для использования МАРКИРОВКИ по нему, что я не знаю.
Это - 100%-й штраф для замены кого-либо LABEL
s с LITERAL
s, если мы не применяем стили к ним? Нет ли Никакие другие соображения?
Да, основная разница в том, что Literal
элементы управления просто выводят текст, а элементы управления Label
окружают его тегами (если вы не используете свойство
AssociatedControlID
, в этом случае элемент управления Label
будет отображать тег ).
Таким образом, метки могут быть оформлены проще, но если вы просто вставляете текст, то лучше использовать литералы. У литеральных элементов управления также есть удобное свойство Mode
, которое определяет способ отображения текста. Вы можете отобразить его в HTML-кодировке, без изменений или удалить все "неподдерживаемые элементы языка разметки".
Если вы не применяете никаких стилей (например, используя свойство Label
CssClass
), то можно заменить элементы управления Label
на Literal
.
Когда у вас есть код, подобный
<asp:Label EnableViewState="false" ID="Label8" runat="server"
AssociatedControlID="txtEmail">Email Address:</asp:Label>
<asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
Оптимально использовать элемент label, потому что он правильно превратит его в элемент html label
с правильным for
атрибутом, нацеленным на ваше текстовое поле, так что если пользователь щелкнет по метке, она автоматически установит его курсор внутри текстового поля.
В противном случае используйте литерал, если только текст не обернут в span
для стилизации css.