我有一個form,它在每個字段中使用各種PNG圖像,根據填充的進度以及是否使用僞類字段不是驗證所需的字段。使用.lt-ie9類定位IE6/7/8 - 不與IE8一起使用
對僞類幾乎不存在的IE支持並不是一個交易斷路器,因爲我可以在所有瀏覽器中顯示基本圖標 - 雖然沒有切換以反映IE6/7/8中字段狀態的變化。
我,但是,其與CSS以下圖像的問題:
#contact input#url:empty,.lt-ie9 #contact input#url{background:url(url-icon.png) no-repeat left center;margin-bottom:24px}
基本上只用#contact input#url:empty
選擇,它不會顯示在所有頁面加載時在IE6 -8。通過添加.lt-ie9 #contact input#url
選擇器,它在IE6和IE7 中正確顯示,但由於某種原因,在IE8中沒有顯示。
這裏是HTML(CSS的可以在這裏找到:http://i.via.dj/EOma):
<div id="contact-form">
<form id="contact" class="clear" method="post" accept-charset="utf-8" novalidate="novalidate">
<fieldset>
<input type="text" name="checking" placeholder="[email protected]" class="hidden" id="checking">
<label for="checking" class="hidden">If you do not want to submit this form, enter your email in this field</label>
<p class="name">
<input type="text" name="name" placeholder="John Doe" title="Enter your name" required="required" id="name">
<label for="name">Name *</label>
<label class="error" for="name" id="name-error">Name is required</label>
</p>
<p class="email">
<input type="email" name="email" placeholder="[email protected]" autocapitalize="off" title="Enter your e-mail address" required="required" id="email">
<label for="email">Email *</label>
<label class="error" for="email" id="email-error">Type a valid email</label>
</p>
<p class="website">
<input type="url" name="url" placeholder="http://" autocapitalize="off" id="url">
<label for="url">Website</label>
</p>
<p class="message">
<textarea name="message" placeholder="Type your message here (max. length 1,200 characters)" title="Enter your comment or message" required="required" id="message" maxlength="1200"></textarea><label for="message">Message *</label>
<label class="error" for="message" id="message-error">You haven't typed a message</label>
</p>
<p class="submit">
<input type="submit" value="Send message" />
</p>
</fieldset>
</form>
任何建議非常讚賞。
感謝您的答覆。但不是我的CSS實際上**兩個**規則:一個選擇符爲「#contact input#url:empty」(如您所說,它在9以下的IE中不受支持,因此如果單獨包含則顯示空白);和第二個選擇器'.lt-ie9 #contact輸入#url',這會消除':empty'並且應該在IE6,7和_8中觸發圖像的顯示。 – 2012-02-21 01:38:00
這是一條規則:'#contact input#url:empty,.lt-ie9 #contact input#url {background:url(url-icon.png)no-repeat left center; margin-bottom:24px}' 。 IE8無法解析選擇器'#contact input#url:empty,.lt-ie9 #contact input#url',因此它會刪除整個規則。 IE6/7應該做同樣的事情。 – thirtydot 2012-02-21 01:41:13
再想一想,'input:empty'可能不是你想要的。 [':empty'匹配沒有孩子的元素。](http://reference.sitepoint.com/css/pseudoclass-empty)因此'input:empty'是[總是匹配](http:// jsfiddle。淨/ bCu5d /)。 – thirtydot 2012-02-21 01:46:14