いいえ。CSS3にはサブジェクトセレクターはありませんが、CSS4にはサブジェクトセレクターがあります。
編集:
純粋な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では機能しません。8より前のバージョンではわからないためですdocument.querySelectorAll
(デモ)。気楽なクロスブラウザソリューションが必要な場合は、 jQueryと次のコード(デモ)を使用できます。
$("tr > td > input").focus(function(e){
$(this).parent().parent().addClass('highlight');
}).blur(function(e){
$(this).parent().parent().removeClass('highlight');
});
tr.highlight
CSSにクラスを追加することを忘れないでください。jQueryは将来のリリースで古いブラウザーのサポートを終了することに注意してください(ブラウザーのサポートを参照)。そのため、IE≤8の場合はjQuery1.xを使用する必要があります。