deutsche umlaute

kann mir jemand helfen, nämlich wie man diesem .css klar macht, dass es deutsche umlaute anzeigt?

das problem taucht immer bei

-überschriften auf.

danke im vorraus…

[HTML]

html {
background: $bottomWrapper.bg.color;
margin:0 0 0 -1px;
padding:0;
overflow-Y: scroll;
}

body {
padding:0;
margin :0;
display:table;
width:100%;
}

#wrapper {
margin:0 auto ;
width:100%;
}
body {
background-color:#FFFFFF;
}
#wrapper {
border-top: 1px solid #ffffff;
}

#topBannerWrapper {
width:100%;
height:90px;
background-color:#FFFFFF;
background-image:url(images/css/topBannerWrapper-bg.jpg);
background-position:center top ;
background-repeat:repeat-x;
}

#topBanner {
width:920px;
margin:0 auto;
height:90px;
background-image:url(images/css/topBanner.jpg);
background-repeat:no-repeat;
}

#hmenuWrapper {
width:100%;
margin:0 auto ;
}
#hmenu {
position:relative;
top:62px;
float:right;
}

#hmenu ul {
list-style:none inside none;
margin:0;
padding:0;
text-transform:uppercase;
font-size:14px;
font-family:Arial,sans-serif;
}
#hmenu ul li {
float:left;
}
#hmenu ul li a {
border:0 none;
color:#555555;
display:block;
float:left;
font-size:14px;
font-weight:bold;
height:2em;
line-height:2em;
text-align:center;
padding:0 20px;
}

#hmenu ul li a:hover {
background-color:#238aea;
color:#78a8c0;
}
#hmenu ul li a:link {
text-decoration:none;
}
#hmenu ul li a:visited {
text-decoration:none;
}
#hmenu ul li a:active {
text-decoration:none;
}

#hmenu li#current a {
background-color:#238aea;
color:#78a8c0;
}

#topSlideshowWrapper {
width:100%;
height:300px;
background-color:#000000;
background-image:url(images/css/topSlideshowWrapper-bg.jpg);
background-position:center top ;
background-repeat:repeat-x;
}

#sliderContainer {
width: 920px;
margin:0 auto;
}

#slider1 {
width:100%;
height: 300px;
position: relative;
overflow: hidden; /* important */
}

#slider1 img {
padding: 0;
margin:0;
width:920px;
height:300px;
}

#slider1 a img { border:none }

#slider1Content {
margin:0;
padding:0;
height:300px;
font-size:0;
width:100%;
position: relative;
}

.slider1Image {
display:none;
float:left;
position:relative;
margin:0;
padding:0;
}
.slider1Image span {
position: absolute;
left:0;
font-family:Tahoma, Arial;
font-size:14px;
padding: 0px;
width:920px;
background-color:#000000;
color: #fff;
display: none;
z-index:20;
filter: alpha(opacity=70);
-moz-opacity: 0.7;
-khtml-opacity: 0.7;
opacity: 0.7;
}

.slider1Image .bottom {
bottom: 0;
left: 0;
height: 70px;
}

#sliderLeftMask {
height:300px;
position:absolute;
top:0;
left:0px;
width:180px;
z-index:10;
background:url(‚images/css/sliderLeftMask.png‘) no-repeat scroll center center transparent;
}

#sliderRightMask {
height:300px;
position:absolute;
top:0;
left:740px;
width:180px;
z-index:10;
background:url(‚images/css/sliderRightMask.png‘) no-repeat scroll center center transparent;
}

#container {
margin:0 auto;
width:920px;
min-height:570px;
}

#content {
width:920px;
margin:0 auto ;
text-align:left;
}
#content p {
text-align:justify;
}

#main {
width:630px;
float:left;
margin-right:40px ;
}
#sidebar {
float:left;
width:250px;
}
.bloc h3 {
margin-top:10px;
}
.bloc {
padding:15px;
background-color:#EEEEEE;
}

#content a:link, #content a:visited {
color:#505050;
font-weight:bold;
}

#content p {
margin-top:10px;
text-align:justify;
}

.padd15 {
padding:15px;
}
.padd20 {
padding:20px;
}

body {
color:#444444;
font-family: ‚Trebuchet MS‘, sans-serif;
font-size: 13px;
font-style: normal;
font-weight: bold;
text-transform: normal;
}
p {
letter-spacing: normal;
line-height: 1.7em;
}

h1 {
color:#000000;
margin:20px 0 10px 0;
clear:both;
}

h2 {
color:#000000;
margin:20px 0 10px 0;
clear:both;
}

h3 {
color:#000000;
margin:10px 0 5px 0;
clear:both;
}

a:link, a:visited {
color:#505050;
text-decoration:none;
}

a:hover {
text-decoration:underline;
}

#bottomWrapper {
background-color:#78a8c0;
background-image:url(images/css/bottomWrapper-bg.png);
background-position:center top ;
background-repeat:repeat-x;
text-align:center;
color:#70806D;
text-align:center;
width:100%;
clear:both;
}

#bottomWrapper a:link, #bottomWrapper a:visited {
color:#e8ddcb;
}

#bottomWrapper a:hover{
color:#cdb380;
text-decoration:none;
}

#footer {
min-height:150px;
width:920px;
margin:0 auto;
background-color:#78a8c0;
background-image:url(images/css/footer-bg.png);
background-position:center top ;
background-repeat:no-repeat;
}

.footer-last {
margin-right:0 !important;
clear:right;
}
.footer-one-third {
float:left;
margin:20px 100px 20px 0;
width:240px;
position:relative;
text-align:left;
overflow:hidden;
}
.footer-one-third h3 {
margin-top:10px;
}
.footer-one-third ul{
border-top:1px solid #82b2ca;
padding:0 ;
}
.footer-one-third ul, .footer-one-third li {
list-style: none ;
margin-left:0 ;
}
.footer-one-third li {
border-bottom:1px solid #82b2ca;
padding: 5px 0 ;
}

#bottom-links {
height:60px;
background:#6999b1 url(‚images/css/bottomLinks-bg.png‘) center top repeat-x;
}

a img {
border:none;
}

.clear {
clear: both;
display: block;
overflow: hidden;
visibility: hidden;
width: 0;
height: 0;
}

[/HTML]

Das hängt nicht vom CSS ab, die Kodierung wird entweder vom Server festgelegt oder im HTML

Die Kodierung muss in der HTML-Datei festgelegt werden mittels Meta-Tag, das geht nicht im CSS.

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" >

Muss, ist falsch. Wie schon gesagt, die Kodierung wird vom Server festgelegt und im header verchickt. Das HTML wird nur berücksichtigt, wenn keine Angabe im http-header erfolgt

Achte auch darauf, dass du für Umlaute und Sonderzeichen HTML-Entities verwendest.

Das ist eigentlich in den meisten Fällen nicht notwendig. ISO-8859-1 oder windows-1252 enthalten Umlaute und etliche Sonderzeichen, UTF-8 sowieso.

Mehr Infos zur Kodierung:

Um genau zu sein ist die Angabe des Zeichensatzes vom Server her auch nur optional. Den Zeichensatz in die HTML-Dateien selbst einzufügen aber auch. Man muss nur irgendwo eben die richtige Angabe vornehmen. :wink: Und in HTML-Dateien ist es sowieso nötig, wenn man die HTML-Seiten lokal anguckt, denn der lokale Rechner liefert keinen HTTP-Header wie ein Server zurück.

Und: in CSS kann man auch einen Zeichensatz angeben. Siehe: SELFHTML: Stylesheets / CSS-Formate definieren / Stylesheets in HTML einbinden

Das ist grundsätzlich richtig, aber etwas für faule die den Zusammenhang zwischen Zeichensatz und Darstellung nicht verstanden haben. Daher ist es auch unnötig HTML-Entities zu verwenden :wink:

Ich benutz bei den meisten sachen wie z.B. Umlauten die Entities… und wenn ich welche nich weiß, schreib ich den text im editor und lass ihn dann durch ein php dokument laufen, das ich dafür geschrieben hab… der verändert dann alle Umlaute und so mit htmlentities($variable); und speichert mir die Ausgabe in ein txt-dokument!

Wie hier schon mehrmals geschrieben, ist das nicht nötig und auch nicht sinnvoll.

Warum ist es nicht sinnvoll??
dann können alle browser es lesen…

Im Grunde stehen die Antworten darauf schon in diesem Thread.

Heutzutage unterstützt jeder mir bekannte Browser verschiedene Zeichensätze/Kodierungen wie ISO-8859-1 oder UTF-8. Das heißt, wenn der Zeichensatz korrekt zum Browser übertragen wird (nachzuprüfen etwa im Firefox mit - und dann unter „Encoding“) und alle Inhalte korrekt in diesem Zeichensatz kodiert wurden, sind Entities für alle Zeichen, die der Zeichensatz unterstützt, absolut unnötig.

Die Argumentation geht ungefähr so: Du würdest ja vermutlich auch nicht auf die Idee kommen, ein „a“ als a zu schreiben, nur weil es möglich ist. Warum also ein „ä“, wenn es der Zeichensatz ebenfalls von sich aus unterstützt?

Es gibt gewisse Gegenargumente. „ä“ liegt zum Beispiel nicht in 7-Bit ASCII. In den Szenarien, für die das relevant ist, würde ich dann aber mein UTF-8-Dokument kurzerhand nach ASCII konvertieren, statt auf einen völlig grundlosen Verdacht hin immer in ASCII zu arbeiten. Wir sind nicht mehr in den 1980ern. :wink:

Hallo, ich habe eine Frage zu Umlauten.

Ich denke dazu brauche ich keinen neuen Thread erstellen. Deswegen poste ich meine Frage einfach mal in dieses Thema.

Genauer gesagt habe ich eine Frage zu Umlauten in Metatags.
Ich möchte mir einen Metatag für Suchmaschinen erstellen und habe im Internet Generatoren dafür gefunden.
Alles schön und gut. Der Server auf dem ich meine HP uploade, erkennt keine Umlaute. Daher habe ich im Inhalt aller html Dokumente die Umlaute mit Befehlen im Quellcode geschrieben. Beispielwörter: „Ähnliche = Ähnliche“ „Gründe = Gründe“ „ß = ß“ "© = © " „können = können“ !

Jetzt meine Frage.
Wenn es bei diesem Server anscheinend nur so funktioniert, muss ich das in den Metatags ganauso schreiben oder kann ich dort direkt ä ö ü & schreiben?
Immerhin ist es ja ein und das selbe Dokument ausser das die Metatags im head Bereich stehen!

Danke für die Antworten

Gruß Carsten

Suchmaschinen ignorieren die meisten Meta-Tags. Aktuell lohnt es sich nur den robot und description Meta-Tag für Suchmaschinen zu benutzen. Alles andere, insbesondere die keywords, sind sinnlos, wie Google selbst auch schon mitgeteilt hat.

Der Server auf dem ich meine HP uploade, erkennt keine Umlaute.

Falsch. Er würde sie durchaus erkennen, wenn Du sie im selben Zeichensatz in deine Webseite einbaust wie er es erfordert. Prüfen kannst Du das indem Du mal in den Header schaust den dein Webserver an den Browser zurück gibt. Mit „Header“ meine ich damit nicht den HTML-Code.

Wenn es bei diesem Server anscheinend nur so funktioniert, muss ich das in den Metatags ganauso schreiben oder kann ich dort direkt ä ö ü & schreiben?

Schreib alle Texte in dem von deinem Webserver angeforderten Zeichensatz. Und verzichte auf diese HTML-kodierungen. Sie schaden zwar nicht, machen aber beim Eingeben mehr Arbeit.