CSS: Eigenschaft immer außer (class?)

Hallo,

Ich bin noch immer am fleißig weiter machen und die Homepage soll demnächst auf das neue Design umgestellt werden.
Derzeit:
scacom.bplaced.net/Collection
Später (TESTSEITE, nicht alle Links und Bilder funktionieren, das ist “erwartetes Verhalten”):
scacom.bplaced.net/ccv

Ein wenig Feedback wäre nett, ich hoffe es ist besser bzw. schöner als das alte.

Nun hab ich ein Problem:
Ich habe den Links und den “Bilder als Links (A IMG)” je andere Farben gegeben (sonst übernimmt er die Farben vom Link zB als Border). So weit so gut nun haben ALLE Bilder den Rahmen. ABER: Manche Bilder sollen KEINEN Rahmen haben. Aber das klappt nicht, ich dachte, ich mache bei den Bildern ohne Rahmen einfach img class=“noborder” aber das nimmt er einfach nicht un ignoriert es. Auch img style=“border:none;” ignoriert er einfach. WARUM? Wie kann ich das schaffen? Oder muss ich umgekehrt alle ohne Rahmen und alle die nen Rahmen haben sollen einen class=“ichwillnenborder” ??? Das wäre viel mehr Arbeit als den Border wieder weg zu bekommen

Hier mein CSS/Idee:
a:link img, a:visited img {
border: 2px solid #919191;
}

a:hover img, a:focus img{
border: 2px solid #000000;
}

.noborder {
border: 5px solid #FF0000;
}

Ich habe sich noch paar Fragen, hoffentlich können die letzte Probleme noch gelöst werden. Und nochmal: Das ist eine testseite, nicht alles funktioniert. Wird natürlich am Release alles klappen :wink:

DANKE!
scacom

Das muss „er“ ignorieren, weil die anderen Selektoren eine höhere Spezifität haben.
w3.org/TR/CSS21/cascade.html#specificity

Gebe diese Selektoren ebenfalls in der Form an, also a:link img.noborder
Dann solltest du den gewünschten Effekt erzielen.

Na dann sieh mal zu, dass du bis dahin auch die zahlreichen Fehler noch entfernst.
validator.w3.org/check?uri=http: … d.net/ccv/

Das mit dem Tipp versuche ich mal.

Diese Seite sagt immer es sind Fehler, dabei wird alles angezeigt. end tag for “br” wäre ja aber das wiederum wird von den meisten auch als
interpretiert. Kenne keine Seite die setzt.
there is no attribute "target"
Das gibts auch sehr wohl und funktioniert auch mit zB top (bei Frames), blank (neues Fenster) oder “Framename”.

Also diese Seite ist nicht so hilftreich wenn man laut dem alles macht, dann siehts wahrscheinlich schrecklich aus und läuft auch nicht besser oder schöner. Dass br kein endtag hat usw. ist vielleicht ein Fehler von dem Programm. Trotzdem steht da viel Blödsinn (zumindest weiß ich nicht, wie es anders/besser gehen soll).

Danke,
scacom

[quote=“scacom”]end tag for “br” wäre ja aber das wiederum wird von den meisten auch als
interpretiert. Kenne keine Seite die setzt.
there is no attribute "target"
Das gibts auch sehr wohl und funktioniert auch mit zB top (bei Frames), blank (neues Fenster) oder “Framename”. [/quote]

Du benutzt sicher XHTML, oder? Dort wäre die korrekte Notation für den Zeilenumbruch
und das target-Attribut ist nur in der Transitionalvariante erlaubt, nicht in der Strict, die du verwendest. Ich habe jetzt nicht nach der benutzten XHTML Version geschaut, aber ab XHTML 1.1 fällt auch die Transitionalvariante weg.

In deiner Seite steht oben doch, daß du XHTML 1.0 strict verwendest, da ist es völlig korrekt,
daß es kein Attribut target gibt und man alle Elemente schließen muß.
Bei XHTML kann man natürlich
schreiben, kürzer ist allerdings
- letzteres
funktioniert sogar, wenn man das XHTML nur als HTML ausliefern läßt, was aber auch
ziemlich sinnlos ist, weil man dann gleich HTML4 verwenden kann.
Auch in der strict-Variante von HTML4 gibt es kein Attribut ‘target’. Für dich wäre es daher
vermutlich sinnvoll, dein Dokument so zu kennzeichnen, daß eindeutig ist, daß du veralteten
Kram verwendest, also HTML 4 transitional.

Die Anzeige im browser direkt hat nur was mit Fehlern zu tun, wenn du die Seite als
application/xhtml+xml auslieferst.
Bei text/html werden Fehlern von browsern traditionell ignoriert und die versuchen zu
improvisieren, kann natürlich jeder anders machen. HTML5 ist ein Versuch, das in Zukunft
zu vereinheitlichen, wie Blödsinn interpretiert werden soll, entsprechend sieht der Entwurf
dazu auch jetzt schon aus ;o)

Dein Kernproblem dürfte darin liegen, daß du weder von HTML noch von XHTML besonders
viel Ahnung hast - eher wenig würde ich mal vermuten, weswegen du Probleme hast, die
Fehlermeldungen des Validators zu verstehen. Und der kann nicht mal alle Fehler erkennen,
der ist also eigentlich noch recht gnädig gegenüber einem Menschen, der sich mit den
Sprachen auskennt ;o)

Die Zeile oben ist dazu da, dass margin left und margin right 0 px zentriert wird. Wenn ich das weglasse, so macht das CSS nicht mehr das, was es soll. Die hab ich irgendwo gefunden oder kopiert wenn man so will, vielleicht sind da unpassende einstellungen dabei, aber ich benötigt diese für das CSS. Leider.

Wenn mir da wer helfen kann, dann bitte sagt mir was ich einstellen muss.

Ich glaube nicht, dass das XHTML ist, das ist HTML + CSS. Nur es ist halt (scheinbar falsch) eingestellt.

Danke,
scacom

bitte informiere dich über html, bevor du hier fragst und nach einigen tipps nur widersprichst.

css macht genau das was es soll, wenn du es falsch verwendet hast, kann css nichts dafür. bereinige alle fehler, gib dem dokument einen entsprechenden doctype und dann wird css auch schon sehr viel besser das machen was du dir vorstellst :wink:

mfg
emil

Hallo,

Ich weiß nicht was XHTML mit dem CSS margin zu tun hat. Ich weiß nur, dass es die Seite verändert, wenn ich es weglassen. Normalerweise hat man ja gar kein DOCTYPE zumindest wird eine leeres phase5 Dokument ohne erstellt.

Ich werde mir das mal ansehen, aber ich will nicht die Seite ändern, es ist ja meines wissens HTML Konform (zumindest das meiste). Ist wohl nur interpretationssache.

scacom

Wenn man so will, ist es ein (bekannter und absichtlicher) Fehler oder Mangel von einigen
browsern, daß das Verhalten bei der Interpretation als HTML davon abhängt, ob oben ein dem
browser bekannter Doctype steht oder nicht. Es hängt dann aber nicht davon ab, ob es einer für
HTML4 oder für XHTML ist.
Aufgrund dieses Fehlers (wird Quirks-Modus genannt), simuliert insbesondere der MSIE ältere,
fehlerhafte Versionen seiner selbst, wenn kein bekannter Doctype angegeben ist, was dann
eben auch zur Folge hat, daß auch neuere Versionen vom MSIE einige CSS-Eigenschaften
falsch darstellen. Jedenfalls erfordert HTML ohnehin immer einen Doctype. XHTML braucht
nicht unbedingt einen, hilfreich kann der aber schon sein, zumindest bei den älteren Varianten.

So jedenfalls handelt es sich um ein XHTML-Dokument, welches offenbar als HTML ausgeliefert
wird. Der Validator hält sich an das, was im Dokument steht, der browser richtet sich danach,
was der server behauptet, was es sei, hier also HTML, so kommt es zu Problemen, die aber
weitgehend beim Autor liegen - wenn der alles richtig macht, gibt es auch keine formalen
Probleme mehr - und die praktischen sind zumindest so weit reduziert, daß sie nicht mehr beim
Autor liegen ;o)

Hallo,

Ja, danke. Mir ist schon klar, dass es nicht 100% OK ist und ich weiß auch nicht alles und lerne stets dazu. Aus dem XHTML werde ich nicht ganz schlau.

Ich habe auf der vorgeschlagenen Seite mal ein wenig gelesen (noch nicht alles) und probiert.

Bei HTML 2.0 wird es nicht mehr zentriert, sieht also schlimm aus. Ich habe nun strict eingestellt, das ist scheinbar falsch, da hier einige Dinge nicht mehr erlaubt sind (finde eher, man sollte es kompatibel lassen und neue Dinge dazumachen, statt welche zu entfernen, sind ja alles brauchbare und gängige Funktionen wie target, das braucht man ja sowieso).

Soll ich nun das nehmen:
Transitional für HTML - einige (welche?) alte Elemente/Attribute
oder doch eher
Frameset für HTML - für Frames
weil ich an anderen Seiten iframes haben werde?

Wie gesagt ich bin gerne bereit es zu verbessern oder zu ändern und was dazu zu lernen. Aber so ganz klar ist es noch nicht, wenn jemand mal einen Vorschlag machen könnte, wie es richtig(er) ist, dann wäre ich sehr dankbar.

Danke,
scacom

a:link img.noborder

Funktioniert perfekt. Danke.

Wegen dem STRICT wäre ich noch dankbar für einen Tipp was das nun wirklich ist.

Bei STRICT:
98 Error, 1 Warning

Bei Transitional
31 Error, 1 Warning

Bei Frameset
24 Error, 1 Warning

Also ist “Frameset” noch das “beste”/passendest für mich???

Was heißt zB
Line 29, Column 6: document type does not allow element “BODY” here
???

Der Code ist:
[…]

[usw.] Es steht nur was im style-css ist das auch nicht erlaubt? color: #000000; font-family: Arial; font-size: 14px; padding: 0px; margin: 0px;

Das war in body. Hab das wie vorgeschlagen nach head gegeben, der error war aber weiterhin da.

Um ehrlich zu sein glaub ich gibt es keine solche Einstellung die meine Seite erfüllt und ohne BODY Tag (der meckert ja immer oder?) kann ich ja nix machen? Bin ein bissl frustriert nun. Aber es funktioniert ja, das ist mir wichtiger. Oder was kann man tun damit der error weg geht?

Und hier:

Muss ich das EN zu DE machen?

DANKE, vielleicht kann mir ja noch wer Tipps geben.
scacom

Da du kein Frameset benutzt, ist Frameset auch nicht die richtige DTD.
Nimm HTML 4.01 Transitional, wenn du nicht auf die alten Attribute, wie „target“ etc. verzichten willst, halte dich an die richtige Syntax und bereinige die Fehler.

http://de.selfhtml.org/html/xhtml/unterschiede.htm

[quote=“scacom”]
Muss ich das EN zu DE machen?
scacom[/quote]

Nein, brauchst du nicht, das EN steht nicht für die Sprache, in der der Inhalt verfasst ist, sondern für HTML-Tags, denn die sind ja auf englisch.

Nimm HTML 4.01 Transitional

OK, werde ich ändern! Danke.

Da du kein Frameset benutzt

iFrames zählt da nicht?

bereinige die Fehler

Das ist gar nicht so leicht glaube ich. Hab in diesen HTML Check Seiten wie Google, Facebook usw. eingegeben, alle haben Fehler. Wenn nicht mal die Profis das schaffen :unamused: . Außerdem wird zb der Google +1 Button als Fehler markiert, aber ich kann/darf das ja gar nicht verändern.

EN steht nicht für die Sprache, in der der Inhalt verfasst ist, sondern für HTML-Tags

Es gibt doch gar keine deutschen html tags oder? :astonished: :whata:

Danke, werde die Seite weiter verbessern.
scacom

Deutsche HTML-Tags gibt’s nicht, aber für den Fall, dass das mal kommt, hat sich das W3C alle Möglichkeiten offen gehalten.

Du brauchst auch nicht zwingend alle Fehler beseitigen, aber es gibt Fehler, die man auf keinen Fall so stehen lassen sollte, wie ungeschlossene Tags, falsche Verschachtelung oder HTML-spezifische Zeichen nicht richtig maskieren. Fehlerfreiheit sollte immer das Ziel sein.

Hallo,

OK, danke.

Naja, manchesmal hab ich nämlich nicht eine Idee, was daran falsch sein soll oder wie man es anders machen kann. Auf geschlossene Tags hab ich eigentlich schon geprüft (anderes Programm) und hab schon ein paar Fehler ausgebessert.

Ich werde mir das nochmal ansehen. Ich hab jetzt mal alle STRICT weggemacht und ersetzt und bin ständig dran, aber ist derzeit lokal (offline) noch nicht online (testseite).

Jetzt fehlen noch ein Haufen Seiten (80 oder so) die umgestellt werden müssen. Wäre super, wenn das automatisch gehen würde :unamused: :smiley: !coffee

scacom

hi,

selbst wenn profis es nicht schaffen. …
Man kann es schaffen (ja auch mit Facebook, Goolge+ etc Button)
Meine Seite :wink:

Ganz einfacher Trick für diese Buttons, pack sie in JS und der Vadiator bekommts nicht mehr mit

<script type="text/javascript"> document.write("<"+"g:p"+"luson"+"e"+">"+"<"+"/"+"g"+":p"+"lus"+"one"+">"); </script>

lg flo

Hallo,

Cooler Trick, alle Achtung :wink:

imagesandmore.net/
ist deine Seite? Alle Achtung sauber und schön gemacht. Und nicht zu überladen. Das mag ich gar nicht mit Wilden Hintergrund usw. Gefällt mir gut die Seite (ist aber nicht bplaced oder?).

Schön ist das Favoriten Bilder mit den Übergangseffekten. Ist das schwer zu machen?

LG,
scacom

Vor ein paar Jahren hat der jetzige Editor von HTML 5 wohl mal die Google bekannten Seiten
statistisch ausgewertet. Dabei ist herausgekommen, daß mehr als 95% fehlerhaft sind.
Das schließt auch größere Seiten und auch die von Google ein. Und wenn man sich die Seiten
und deren Qualität anguckt, weiß man ganz genau, daß da jedenfalls keine Pofis am Werke war
was (X)HTML anbelangt - das sind also sicher keine Vorbilder. Das wären eher die vier bis fünf
Prozent an korrekten Seiten, wo Institutionen wie Google, die es selbst nicht auf die Reihe
bekommen, aber kein Interesse haben, besonders darauf hinzuweisen, wo man ordentlich
erstellte Seiten findet.

Mangelhafte und fehlerhafte Seiten lesbar darzustellen ist eine Kunst für sich, die insgesamt nur
bei wenigen (das sind zugegebenermaßen die meist genutzten) browsern halbwegs
funktioniert. Wer also mangelhafte Seiten veröffentlicht, erschwert es letztlich neuen Projekten,
eigene browser zu veröffentlichen, was wiederum die Machtposition von den Unternehmen und
Organisationen stärkt, die mehr ode weniger als Kartell versuchen, neue Projekte auszustechen,
daher auch der äußerst komplexe Entwurf für HTML5.

Was die Wahl eines geeigneten Profils anbelangt, so ist eigentlich für eine heute erstellte
Seite zu empfehlen, ein aktuelles Profil zu verwenden, also etwa XHTML1.1 oder XHTML+RDFa.
Aus gutem Grund sind da einige Elemente und Attribute gestrichen, die man schon zur
Jahrtausendwende nicht mehr verwenden sollte, heute also eigentlich nur noch in
Dokumenten aus dem letzten Jahrtausend auftauchen sollten.

Frames werden oft falsch eingesetzt und vermutlich hast du gar kein Anwendung, bei der dies
korrekt eingesetzt werden würde. ‘target’ ist in der Tat etwas umstritten. Bei einer
ordentlich strukturierten Seite braucht man es aber eigentlich auch nicht oder kaum.
‘Kaum’ bezieht sich dabei auf Projekte, wo man etwa XHTML und SVG miteinander mischt,
wo es notwendig sein kann, genau anzugeben, was wo dargestellt werden soll.
Allerdings hat XHTML1.1 auch ein Modul für ‘target’, das ist aber wohl nicht in der DTD drin,
die der Validator verwendet ;o)

Ryon_:
document.write sollte man vermeiden. Das ergibt eigentlich schon in HTML keinen Sinn, in
XHTML ist es schlichtweg falsch. Daß der Validator dazu nichts sagt, liegt nur daran, daß
der Skriptkram nicht untersucht, weil der gar nicht zum Inhalt zählt. Es ist ja für die
inhaltliche Bedeutung eines Dokumentes auch belanglos, ob solche Skripte interpretiert
werden oder nicht. Wenn etwas also inhaltlich relevant ist, notiert man das mit (X)HTML
und verwendet dafür kein Skript.

@ hoffmann:

Das war ein sehr interessanter Beitrag, danke dafür. Mir ist schon klar, dass “fehlerfrei” bzw. möglichst fehlerfrei gut ist - und das sollte natürlich das Ziel sein. Ich achte da - so gut ich kann - schon drauf, dass zB die Tags geschlossen sind, dass ich kleine Fehler ausbessere oder die Links überprüfe, dass es keine “toten” gibt.

Aber - wie du sagst - ich bin kein Profi und sehr viele andere Seiten haben auch Fehler. Meine Seite wird da (allgemein) absolut nichts an Browsern oder so ändern, doch ich bin bemüht, es an verschiedene Browser anzupassen.

Ich habe zB ein Problem mit dem seitlichen (fixed) computer collection logo das links im weißen Bereich steht. Ab IE8 und FF3 usw. wird es korrekt angezeigt. Im IE7 (oder man drückt kompatibelitätsmodus) ist es allerdings IM Menü drinnen. Ich hab es dann mit dem starhtml *html hack um die Pixel rübergeschoben. Nun sieht es ok aus.

Ich kann dir aber zB nicht sagen, ob es ein Fehler von mir war (vielleicht könnte man es anders/besser lösen, damit das Problem gar nicht ensteht) oder einfach der Browser es anders/falsch macht. Ist vielleicht nicht die beste Lösung mit *html hack aber wenigstens scheint es zu funktionieren. Alles andere ist nämlich auf allen (zumindest den von mit getesteten) Browsern ok dargestellt.

Was die html Fehler betrifft, muss ich das mal testen bzw. ansehen, aber ich fürchte bei den meisten weiß ich nicht, was man besser/anders machen sollte. Man (zumindest ich) versuch halt immer neues und lerne stets dazu. Perfekt ist es nicht - aber ich hoffe von mal zu mal etwas besser/schöner/moderner.

scacom