Я спробував це, і це прекрасно працює для мене. Зауважте, що властивості color
та font-size
властивості не матимуть жодного ефекту в Chrome, оскільки жоден текст не відображається. (Firefox виводить текст alt, якщо зображення неможливо знайти.) Використовуючи властивість width, наприклад, показує, що він працює добре. Я опублікую свій код нижче, щоб вас побачили.
Однак, до вашого первинного питання, орієнтація на те, що по суті є полем "вільний текст" у CSS, схильна до помилок. Змінити атрибут alt дуже просто, не замислюючись про наслідки в CSS (на відміну від зміни назви класу там, де це повинно бути очевидно).
Крім того, оскільки ви вже орієнтуєтесь на ідентифікатор, вам потрібно використовувати лише цей селектор - ідентифікатор можна використовувати лише один раз на сторінці.
<!DOCTYPE html>
<html>
<head>
<style>img#logo[alt="Site Title"] { width:200px }</style>
</head>
<body>
<img alt="Site Title" src="bullet.png" id="logo" />
</body>
</html>