ASP.NET Как удалить атрибут 'style' из элемента управления input type = 'image'? - PullRequest
4 голосов
/ 25 апреля 2009

Я использую серверный элемент управления asp: ImageButton; я установил для атрибута CssClass мой стиль CSS, в котором я определил границу: сплошная 1px красная;

.NET автоматически отображает встроенный атрибут style следующим образом:

 style="border-width:0px;"

Q1. Могу ли я удалить автоматический встроенный «стиль»? например на PreRender возможно проверить HTML и отредактировать его? Я пробовал Attributes.Remove ("стиль"), но это не работает (как ни странно, тоже не ошибка), и я помню, что где-то читая, я могу удалить только те атрибуты, которые я добавил вручную.

Мой обходной путь - назначить свойство BorderWidth = 1px на странице aspx, но какой смысл предоставлять свойство CssClass, если оно все равно будет переопределено (автоматически!) Ошибка или функция?

Ответы [ 4 ]

3 голосов
/ 25 апреля 2009

Причина, по которой они это делают, заключается в устаревшем HTML, где изображения по умолчанию имеют границы, когда к ним прикреплен тег <a>. В большинстве случаев людям не нужны эти границы, поэтому ASP.NET делает то, что они делают. Чтобы обойти это, вы можете сделать следующее в вашей таблице стилей (при условии, что вы устанавливаете cssclass='redborderbutton'):

.redborderbutton img
{
  border:solid 1px red !important;
}
1 голос
/ 25 апреля 2009

Вы можете использовать серверный элемент управления HTML.

<input id="Image1" runat="server" name="ImageButton1" src="images\image.jpg" type="image" />
0 голосов
/ 17 октября 2009

ASP - самый хакерский набор тэгов. Даже если граница «унаследована», это может быть решено в CSS.

0 голосов
/ 25 апреля 2009

пост рендеринга вы можете удалить с помощью JQuery.

$(document).ready(function() { $("img").removeAttr('style'); }

Замените "img" селектором стиля css, но оставьте кавычки.

На самом деле, я делаю это много в asp.net, чтобы "исправить" рендеринг по умолчанию asp.net

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...