Это не проблема ASP.NET. Да, вы правы, что CSS не применяется к элементам управления на стороне сервера, так как они отображаются в разметке ASPX / ASCX. Они применяются к сгенерированному HTML. Большинство элементов управления ASP.NET имеют свойство CssClass, где устанавливается CssClass = "n", что добавит class = "n" к некоторым HTML-тегам, которые они генерируют. Таким образом, вы можете написать правила css для их назначения с помощью .n {...}
Но в любом случае, в этом случае происходит что-то еще, что вы не включили в вопрос. Я рекомендую взять Firebug, нацелиться на
, который вы ожидаете стилизовать, и посмотреть, какие стили CSS применяются. Отладка оттуда.
Может быть, какое-то другое правило CSS имеет приоритет. Возможно, ваши CSS-правила были опечатаны или не включены. Firebug - хороший инструмент для отслеживания подобных ошибок.
Чтобы продемонстрировать, что происходит что-то еще, я проверил ваш пример работы HTML + CSS:
<html>
<style>
td { background-color: blue }
</style>
<body>
<table>
<tr>
<td>...</td>
<td>...</td>
</tr>
<tr>
<td>...</td>
<td>...</td>
</tr>
</table>
</body>
</html>