2014-02-07 56 views
0

所以我在html5中有這個表單。文本區域從一開始就是空的,並且有一個邊框作爲標記,但是當輸入內容時,通過使用css3中的有效值,邊框將會消失。這是我的代碼。爲什麼這個html檢查在CSS中有效?

HTML5:

<div> 
    <label for="caption">caption</label> 
    <textarea type="text" name="caption" id="caption"></textarea> 
    </div> 

CSS3:

#caption { 
    float: right; 
    width: 450px; 
    height: 50; 
    border: 1px solid #D3D3D3; 
    resize: none; 
    font: 12px "lucida grande", tahoma, verdana, arial, sans-serif; 
} 

#caption:valid { 
    border: none; 
} 

的問題是,僞類的有效被「激活」,即使它是空的,古怪足夠這不會發生在任何其他元素在形式中。

我希望有人能幫助我。在此先感謝:)

+0

它也發生在'輸入'以及..見http://jsfiddle.net/gaby/dvM8A/,除非你已經指定驗證規則像'required'給他們(*你沒有分配到'textarea' *) –

回答

5

這是因爲它被認爲是有效的,因爲它沒有標記爲必需的。當不需要字段時,空值非常好。

嘗試將required屬性設置爲textarea。