不。CSS3中沒有主題選擇器,但在CSS4中會有一個。
EDIT:
甲純JavaScript解決方案可以是
var i;
var inputs = document.querySelectorAll("tr > td > input");
for(i = 0; i < inputs.length; ++i){
inputs[i].addEventListener('focus',function(e){
this.parentNode.parentNode.className += ' highlight';
});
inputs[i].addEventListener('blur',function(e){
this.parentNode.parentNode.className = this.parentNode.parentNode.className.replace(/\s*highlight\s*/ig,' ');
});
}
然而,這將不是在IE ≤ 7工作,因爲versons 8之前不知道document.querySelectorAll
(demonstration)。如果你願意,你可以使用jQuery一個無憂無慮的跨瀏覽器解決方案,下面的代碼(demonstration):
$("tr > td > input").focus(function(e){
$(this).parent().parent().addClass('highlight');
}).blur(function(e){
$(this).parent().parent().removeClass('highlight');
});
不要忘了一類tr.highlight
添加到您的CSS。請記住,jQuery將下降支持舊的瀏覽器在將來的版本(見Browser Support),所以你必須使用jQuery 1.x中的IE 8 ≤
這將是很好,如果你使用這個輸入:焦點這將工作 – Jack 2012-04-15 08:11:58
是的,焦點給輸入很好的效果,但我不想突出整行。 – 2012-04-15 08:32:26