Я видел несколько постов на эту тему здесь, и я прочитал спецификацию W3C по разрешению конфликтов в стиле границы (и, признаюсь, я не до конца понял), и я не уверен, как этого добиться. что я хочу.
При наведении на строку я хочу изменить цвет рамки вокруг ряда. Я догадался, что лучший кросс-браузерный способ сделать это - изменить цвета границы тд в этом ряду. Однако я не могу выполнить его так, чтобы верхняя граница строки также изменилась.
Вот мой CSS:
#dataGrid table {
border: 1px solid #cacac8; /* I've tried it with and without this border setting */
table-layout: fixed;
border-collapse: collapse;
}
#dataGrid td {
border: 1px solid #cacac8;
padding: 8px 11px 7px 11px;
text-align: left;
}
#dataGrid .cellHovered {
border-top: 1px solid #425474;
border-bottom: 1px solid #425474;
}
#dataGrid .cellFirstHovered {border-left: 1px solid #425474;}
#dataGrid .cellLastHovered {border-right: 1px solid #425474;}
и мой JQuery:
$('div#dataGrid tr.dataRow').hover(
function () {
$(this).children('td').addClass('cellHovered');
$(this).children('td:first').addClass('cellFirstHovered');
$(this).children('td:last').addClass('cellLastHovered');
},
function() {
$(this).children('td').removeClass('cellHovered');
$(this).children('td:first').removeClass('cellFirstHovered');
$(this).children('td:last').removeClass('cellLastHovered');
});