CSS定義input disabled樣式

來源:互聯網
上載者:User

也可以動態產生span元素替換編輯控制項

 <form id="form1" runat="server">
    <div>
        <input id="Text1" type="text" value="111" />
    </div>
    </form>

    <script type="text/javascript">
        $(document).ready(function() {
            $("<span style='color:red' id='Text1_span'>" + $("#Text1").val() + "</span>").insertAfter("#Text1");
            $("#Text1").bind("change", function() {  $("#Text1_span").val( $(this).val()); });
           
            $("#Text1").css("display","none");
        })
    </script>

 

 

 

disabled 屬性規定應該禁用 input 元素。
被禁用的 input 元素既不可用,也不可點擊。可以設定 disabled 屬性,直到滿足某些其他的條件為止(比如選擇了一個複選框等等)。然後,就需要通過 JavaScript 來刪除 disabled 值,將 input 元素的值切換為可用。
以下三種寫法都可以禁用 input

  1. <p><input type="text" disabled value="已禁用"/></p>
  2. <p><input type="text" disabled="disabled" value="已禁用"/></p>
  3. <p><input type="text" disabled=disabled value="已禁用"/></p>

被禁用的 input 預設顯示灰色,可以通過CSS修改樣式。
1. 利用CSS3 :disabled 虛擬元素定義

  1. //Chrome Firefox Opera Safari
  2. input:disabled{
  3. border: 1px solid #DDD;
  4. background-color: #F5F5F5;
  5. color:#ACA899;
  6. }

2. 利用屬性選擇符定義

  1. //IE6 failed
  2. input[disabled]{
  3. border: 1px solid #DDD;
  4. background-color: #F5F5F5;
  5. color:#ACA899;
  6. }

3. 利用類來定義

  1. input.disabled{
  2. border: 1px solid #DDD;
  3. background-color: #F5F5F5;
  4. color:#ACA899;
  5. }

最終結果:

  1. input[disabled],input:disabled{
  2. border: 1px solid #DDD;
  3. background-color: #F5F5F5;
  4. color:#ACA899;
  5. }
  6. //IE6 Using Javascript to add CSS class "disabled"
  7. * html input.disabled{
  8. border: 1px solid #DDD;
  9. background-color: #F5F5F5;
  10. color:#ACA899;
  11. }

注意:IE8 bug 由於IE8 不識別 :disabled 導致input[disabled],input:disabled樣式失效,可以考慮單獨來寫,或者直接使用input[disabled]。有興趣的可以看我的DEMO

 

示範

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.