0

我有一个 ASP.NET 文本框。当文本框获得焦点时,我试图将边框的颜色设置为绿色,并且我想具体说明文本框的。文本框如下所示 -

<asp:TextBox CssClass="myInput" BorderStyle="None"  runat="server">Search</asp:TextBox>

注意:我从 BorderStyle="None" 开始,因为当文本框没有焦点时,我不想显示边框。目前在对焦时会显示一个边框,但这不是我想要的颜色。

我在我的 CSS 文件中尝试了以下内容 -

.myInput:focus {
                 border: green;
              }

input.myInput:focus {

                    border: green;
                } 

(和其他一些人)但没有任何效果。有人可以告诉我怎么做吗?谢谢!

4

4 回答 4

2

是的,您需要BorderStyle="None"从您的TextBox控制中删除 。

border在 CSS 中为此设置样式,然后您可以使用focus

看看这个http://jsfiddle.net/xXEWK/

一开始您看不到文本框 - 单击您看到“文本框 - >”的右侧

于 2012-11-01T17:40:51.197 回答
1

看看这个

而不是 border: green你需要使用border: 1px solid green;

你的文本框应该是这样的

<asp:TextBox CssClass="myInput"  runat="server">Search</asp:TextBox>

更新

我认为最好使用jQuery。

您可以在焦点上添加一个类,并在失去焦点时删除该类

查看更多关于focusfocusOut

请参阅此示例

于 2012-11-01T17:42:46.937 回答
1

我不得不使用 -

 .myInput:focus {
        border:solid 1px green !important;
 }

因为边框样式被其他 CSS 设置覆盖。

于 2012-11-01T18:34:33.690 回答
0

你可以这样使用

<asp:TextBox ID="txtSearch" CSSClass="myInput" runat="server">Search</asp:TextBox>
于 2012-11-01T18:41:20.527 回答