Hi,
Verstoß gegen DRY: html-Tag mit @lang-Atrribut und womöglich weiteren Attributen (@id) und Klasse "no-js" wird etliche Male wiederholt.
<?php
$lang = 'de';
echo '<!--[if lt IE 7]><html lang="'.$lang.'" class="no-js lt-ie9 lt-ie8 lt-ie7"><![endif]-->';
echo '<!--[if IE 7]><html lang="'.$lang.'" class="no-js lt-ie9 lt-ie8"><![endif]-->';
echo '<!--[if IE 8]><html lang="'.$lang.'" class="no-js lt-ie9"><![endif]-->';
echo '<!--[if gt IE 8]><!--><html lang="'.$lang.'" class="no-js"><!--<![endif]-->';
?>
Oder irgendeine angebracht Variation davon.
Ich finde das Argument DRY hier lächerlich.
(IMHO ist die Klasse "no-js" auch völlig überflüssig.)
Da kannst du durchaus recht haben. Ich finde sie macht das Leben in manchen Situation einfacher und stört nie.
(Und ja, ich bin mir der Problematik der Verfügbarkeit von JavaScript bewusst.)
Aber sie ist dir egal, oder wie?
Dann kannst du im CSS einfach über Klassen die gewünschten Versionen ansprechen, um alles kleiner IE8 zu bekommen
Das kann man auch ganz einfach ohne Klassen mit '
*+html
' für IE 7 (und wenn’s denn noch sein muss mit '* html
' für IE < 7.
Das ist mir durchaus bewusst.
Wo ist der Vorteil von *+html gegenüber .lt-ie8?
Letzteres ist vor allem auch für alle, die nicht die Erfahrung in CSS haben die du voraussetzt, eindeutig lesbar und verständlich.
~dave