Проблемы ширины текстового поля - ASP.NET - PullRequest
9 голосов
/ 19 февраля 2011

У меня есть пользовательский элемент управления на странице веб-сайта, который генерирует текстовое поле. В текстовом поле указана ширина, но текстовое поле периодически отображается с гораздо меньшей шириной, чем указано в коде. Я попросил пользователей прислать мне копии результатов «просмотра источника», чтобы я мог сравнить хорошие и плохие результаты. Под «прерывистым» я подразумеваю похожие сборки - разные компьютеры. Обратите внимание, что плохие результаты ВСЕГДА отображаются на одних и тех же «плохих» компьютерах (с этой проблемой более одного пользователя) и, наоборот, на «хороших» компьютерах (все с той же версией IE7, что и на «плохих» компьютерах). ) всегда отображать "хорошие" результаты.

Когда страница отображается правильно, HTML-код, отправляемый в браузер, выглядит следующим образом:

<input name="ShortDescription" type="text" maxlength="100" 
id="ShortDescription" class="content" style="width:800px;" />

и при неправильной визуализации это выглядит так:

<input name="ShortDescription" type="text" maxlength="100" 
id="ShortDescription" class="content" />

В обоих случаях код ASP.NET:

<asp:textbox id="ShortDescription" runat="server" 
CssClass="content" Width="800px" MaxLength="100"> </asp:textbox>

Я не уверен, почему тег стиля сбрасывается. Вышеуказанные страницы были просмотрены в одном браузере (IE7) на разных компьютерах. Компьютеры имеют корпоративную сборку, поэтому они должны быть настроены одинаково.

Буду признателен за любую помощь!

Ответы [ 5 ]

12 голосов
/ 19 февраля 2011

Попробуйте установить TextBox с помощью CssClass или в качестве параметра атрибута стиля вместо использования атрибута Width

<asp:TextBox id="ShortDescription" runat="server" CssClass="content" MaxLength="100" style="width: 800px" />
<style>.content { width: 800px }&lt/style>
<asp:TextBox id="ShortDescription" runat="server" CssClass="content" MaxLength="100" />
5 голосов
/ 15 сентября 2016

Примените свойство min-width.

В вашей таблице стилей CSS

.Textbox
{
min-width:100%;
}

В вашей * .aspx

<asp:TextBox  CssClass="TextboxStyle"  placeholder="Enter the Title" runat="server" ID="TextBox1"></asp:TextBox>

Это обновит текстовое поле

5 голосов
/ 19 февраля 2011

В прошлом я обнаружил, что установка ширины в самом классе вместо использования свойства width текстового поля будет обеспечивать правильное отображение элемента управления.

0 голосов
/ 13 июня 2015

для исправления ширины текстового поля

возьмите один файл скина и вставьте следующий код ...

например "skinFile.skin"

<textbox runat="server" width="200px"/>

......................................

после этого поместите следующий код на свою страницу aspx.

Theme="SkinFile

например ...

<%@ Page Language="C#" MasterPageFile="~/AdminMaster.master" AutoEventWireup="true" CodeFile="stu_resgistration.aspx.cs" Inherits="AdminSide_stu_resgistration" Title="Untitled Page" Theme="SkinFile"%>
0 голосов
/ 19 февраля 2011

asp:textbox, который компилируется в тег input, не имеет атрибута "width" в соответствии с w3. Он поддерживает атрибут «размер». IE (678), вероятно, лучше проведет время со стандартом, поскольку, как и другие браузеры, их интерпретация слабее.

http://www.w3.org/MarkUp/1995-archive/Elements/INPUT.html

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