Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

HTML-Tipps für Webentwickler: Jede Woche neu

translate - Übersetzung steuern

Testen Sie unsere 2016 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Unabhängig davon, ob es sich bei Ihrem Projekt um eine "große" Website handelt oder eine "kleine", Sie einen Webshop aufsetzen wollen oder einen privaten Blog betreuen – eines haben alle Webseiten gemeinsam: die Basis ist HTML. Profitieren Sie in dieser praktischen Tipps&Tricks-Sammlung von der jahrelangen Erfahrung der Trainerin Florence Maurice, die Ihnen unbekannte Features nahe bringt, zur Übersicht über die einzelnen Versionen verhilft oder oftmals nur mit kleinen, pfiffigen Hinweisen Ihren Alltag als Webdesigner und -programmierer erleichtert.
06:04
  Lesezeichen setzen

Transkript

Google, Microsoft und Yandex bieten Tools, um die Inhalte von Webseiten automatisch zu übersetzen. Damit das gut klappt, sollten Sie jedoch kennzeichnen, was übersetzt werden soll uns was nicht. Die automatischen Übersetzungen von Google, Microsoft und co, sind natürlich nicht vergleichbar mit echten Übersetzungen, wie sie von Menschen angefertigt werden, aber sie sind manchmal ungeheuer praktisch und sie sind auch wesentlich besser, als noch vor ein paar Jahren. Das Problem ist aber dabei, dass immer alles übersetzt wird im Zweifelsfall. Sehen wir uns ein Beispiel an. Ich lasse mir mit dem Google-Übersetzer eine Webseite übersetzen und möchte mir das dann hier anzeigen lassen. Ich habe ausgewählt eine Webseite, wo es um die Bedienung von "PhpStorm" geht. Wenn ich das jetzt so lese, klingt das erstmal auch schon gar nicht so schlecht und so weiter. Und ich würde den Text auch gut verstehen. Jetzt gibt es ein erstes Problem. Hier steht "Folgende Optionen stehen zur Verfügung, um das AutoSave-Verhalten zu optimieren (Datei | Einstellungen | Aussehen und Verhalten Systemeinstellungen)". "PhpStorm" bietet keine Oberfläche auf deutsch. Das heißt, ich werde nirgendwo innerhalb von "PhpStorm" den Menüpunkt "Datei" finden. Das ist ein Problem und es geht natürlich auch soweit, dass es sehr sinnlose Übersetzungen gibt, wie "Datei | Rette alle". Das heißt natürlich "Save All". Und das bring mich überhaupt nicht weiter, sondern irritiert mich nur. Das heißt, bei diesem Text wäre es natürlich sinnvoll, dass solche Befehle nicht übersetzt werden. Hingegen sollten übersetzt werden diese Texte dazwischen. Genau zu diesem Zweck ist das Attribut "translate" gedacht. Damit können Sie über "translate=no" angeben, dass ein Teil nicht übersetzt wird. Ein Beispiel dazu findet sich beim "W3C". Worum geht es? Es geht um irgendein Bienenspiel, was ein Spiel auf englisch ist und dann muss man immer Befehle eingeben und man muss sie auf englisch eingeben. Und deswegen steht an dieser Stelle "translate=no" und damit werden diese Textteile dann nicht übersetzt. Was zählt alles zu Teilen, die nicht übersetzt werden sollen? Also zum Beispiel, wie hier Befehle, die in einem Programm eingegeben werden müssen. Es geht genauso natürlich auch, um Code-Teile, die nicht übersetzt werden sollen. Ebenfalls nicht übersetzt werden sollen normalerweise Eigennamen, Bandnamen, Titel von Büchern, Filmen, et cetera. Neben der Angabe "translate=no", können Sie auch "translate=yes" verwenden. Wenn Sie vorher "translate=no" angegeben haben, so lässt sich das dadurch überschreiben. Sehen wir uns ein Beispiel an. An dieser Stelle gibt es einen Codeteil, der soll nicht übersetzt werden. Aber innerhalb des Codeteils existiert eine Beschriftung und die darf übersetzt werden. Deswegen ist dann bei diesem inneren Part, um das Äußere zu überschreiben, "translate=yes" angegeben. Sehen wir uns das im Browser an. Dann soll das Ganze nicht übersetzt werden, aber dieser Teil hingegen schon, deswegen ist "translate=yes" angegeben. Das Attribut "translate" beeinflusst den Inhalt von Elementen, aber auch manche Attribute selber. Auf den ersten Blick denkt man vielleicht: "Um Gottes Willen, warum sollten den im HTML die Werte von Attributen übersetzt werden? Ich möchte ja nicht, wenn ich angebe "selected=selected", dass dann "selected" übersetzt wird." Das ist natürlich korrekt. Bei den meisten Attributen ist es nicht erwünscht, dass die übersetzt werden, aber bei bestimmten Attributen ist es anders. Klassisches Beispiel wäre ein "img"-Element für Bilder. Da gibt es das Attribut "alt" und das sollte natürlich, wenn eine Übersetzung stattfindet, auch übersetzt werden, denn das gibt ja einen alternativen Text an. Beim "W3C" finden Sie die Attribute aufgelistet, bei denen es der Fall ist, dass die Eigenschaften auch übersetzt werden können, sofern das entsprechend angegeben ist. Bevor das Attribut "translate" eingeführt wurde, hat man auf "class"=notranslate" zurückgegriffen, aber heute sollten Sie das Attribut verwenden. Was heute noch funktioniert ist, dass Sie das Ganze über eine Meterangabe für Google machen. Aber damit es auf allen Systemen funktioniert, ist das Attribut am besten. Die Unterstützung für dieses Attribut schaut prinzipiell sehr gut aus. Sie sehen hier bekannte Übersetzungsdienste angegeben und was die jeweils unterstützen. Und da ist alles schön grün. Alles wird unterstützt. Ausnahme bei Microsoft. Wenn man "translate=yes" beim "span" angibt, dann funktioniert das nicht. Etwas durchwachsen sieht das hingegen bei der Verwendung von Attributen aus. Also, ob der Inhalt von Attributen übersetzt werden soll oder nicht. Fazit, das Attribut "translate" ist ungeheuer praktisch, wenn Sie bestimmte Teile ihrer Webseite als nichtübersetzbar kennzeichnen wollen. Beispielsweise braucht man das bei Code, oder bei allen Arten von Eigennamen.