Muss er nicht.
Auch ohne Anführungszeichen akzeptiert es der Browser oder Validator.
Das ist so falsch und sorgt immer wieder für Probleme, grade bei Neulingen, die solche Angaben mangels Wissen auch noch glauben.
Die Anführungszeichen sind vorgeschrieben. Der HTML-Validator findet Leerzeichen in Attributen nicht, weil die nicht zum HTML gehören. Genau so wenig wie er Rechtschreibfehler oder Fehler in JavaScript oder ... findet. Deshalb gibt es ja die vielen unterschiedlichen Validatoren.
Die (meisten) Browser verknüpfen die Klasse (sofern nur eine angegeben ist) trotzdem mit den zugehörigen CSS-Eigenschaften. Das liegt aber schlicht und einfach daran, dass die Browser sehr fehlertolerant sind. Eine Vorgabe der Browser ist es, dass sie durch fehlerhaften HTML- und / oder CSS-Code nie abstürzen sollen und (das ist hier das entscheidende) versuchen sollen, aus jedem Schrott noch das Beste herauszuholen. Sie versuchen also alle Angaben irgendwie umzusetzen und anzuzeigen.
Ein Problem ist, dass die Fehlerbehandlung nicht bestimmt ist, sich also jeder Browserhersteller sein eigenes Süppchen kochen muss. Folge: Die CSS-Anweisung wird trotz des fehlerhaften Quellcodes vielleicht von einem, vielleicht von mehreren, vielleicht sogar von sehr vielen Browsern korrekt angezeigt. Andere Browser ignorieren sie aber vielleicht und zeigen sie nicht an.
Das größere Problem: Webseitenersteller, die sich mit der Materie nicht auskennen, meinen, das sie überhaupt keine Fehler machen und tragen das sogar weiter. Oder glauben sogar, Vereinfachungen entdeckt zu haben.
Die Korrekturen des fehlerhaften Quellcodes durch die Browser kann man sich häufig sogar anschauen. Dazu einfach mal die betreffende Seite untersuchen. Im Firefox "Rechte Maustaste -> Element untersuchen", im Chrome "Rechte Maustaste - Untersuchen" und so weiter.
In dem Untersuchen-Fenster den Quelltext anzeigen und die betreffende Anweisung / Zeile anschauen. Dort sind die im Quelltext fehlenden Anführungszeichen eingefügt.