• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

CSS-Neuling mit ein paar Fragen.

Status
Für weitere Antworten geschlossen.

RealGsus

Neues Mitglied
Hallo zusammen,

ich habe die Aufgabe die Website meiner Firma neu zu gestalten. Nach eingehender Recherche im Netz sieht es nun so aus, als ob das altbekannte Frame- und Tabellenlayout wohl nicht mehr zeitgemäß ist und man eigentlich alles im CSS machen kann. Gerade die Idee mit den globalen Layouts, Printlayouts etc. finde ich sehr spannend. Nun bin ich also erstmal am rumprobieren, was so machbar ist und es ergeben sich noch einige Fragen für mich.

Als grobe Orientierung dient mir diese Seite. Nun habe ich ein Top-Level Menü gefunden, dass mir sehr gut gefällt und mal eine kleine Testseite gebaut. Für die Unternavigation hatte ich an ein Menü auf der linken Seite gedacht, angelehnt an die Beispielseite. Verwenden wollte ich dieses Menü.

Nun habe ich eine kleine grundlegende Frage. Öffnet man bei einer mit CSS designten Seite immer komplett neue Seiten? Also bei Frames war es ja so, dass man das Menü in einem Frame hatte und durch die Verweise im Menü andere Frames mit neuen Inhalten geladen hat. Bei CSS ist es doch so, dass das Menü quasi auf jeder Seite wieder mit eingebunden ist und somit auch jedes Mal neu geladen werden muss? Oder habe ich da was falsch verstanden?

Ich weiß nun nicht, ob das Menü auf meiner Beispielseite vielleicht zu aufwändig ist, aber es dauert halt immer, bis es auf der neu aufgerufenen Seite, neu aufgebaut ist. Kann man das irgendwie ändern? Wäre es sinnvoll das Menü in einen extra Frame zu legen, der nicht neu geladen wird oder sowas? Ich hoffe ihr wisst was ich meine :).

Achso, und wo ich grad dabei bin. Könnt ihr mir evtl. Literatur empfehlen und/oder Schulungen? :)

Hoffe ihr könnt mich aufklären,
seb.
 
Hi.

Also das mit den Frame- und Tabellenlayout hast du gut erkannt.


Öffnet man bei einer mit CSS designten Seite immer komplett neue Seiten?
Ich würde sagen, ja.

Das du nicht jedes mal ne neue Seite laden musst, geht mit PHP z. B. mit "include".

Ich hoffe ich konnte dir ein bisschen helfen.

Liebe Grüße
icon12.gif


iplay
 
Das du nicht jedes mal ne neue Seite laden musst, geht mit PHP z. B. mit "include".
Da PHP serverseitig läuft, wird natürlich trotzdem jedes Mal eine neue Seite geladen. Man spart sich mit include lediglich, gleichbleibende Inhalte in jede Seite erneut schreiben zu müssen.

Nach eingehender Recherche im Netz sieht es nun so aus, als ob das altbekannte Frame- und Tabellenlayout wohl nicht mehr zeitgemäß ist und man eigentlich alles im CSS machen kann.
Gut recherchiert. Das schafft nicht jeder. Man SOLL sogar alles in CSS machen, denn CSS ist für Layout und Design und HTML für die Semantik. So ist HTML schon immer gedacht, aber mangels CSS hat man HTML zweckentfremdet.
Wenn Du CSS-Layouts machen willst, musst Du unbedingt auch HTML richtig lernen und verstehen. Daran scheitern und verzweifeln sehr viele.

Ich weiß nun nicht, ob das Menü auf meiner Beispielseite vielleicht zu aufwändig ist, aber es dauert halt immer, bis es auf der neu aufgerufenen Seite, neu aufgebaut ist.
Deswegen werden Design und Layout ja in ein externes CSS-Stylesheet gepackt, damit das nur einmal geladen und dann aus dem Browsercache geholt wird. Das ist ein Feature, das deutlich besser ist, als Tabellenlayouts (mal abgesehen davon, dass diese einfach Unfug sind), denn bei Tabellenlayouts musste auf jeder Seite das gesamte Layout nochmal neu geladen werden.

Kann man das irgendwie ändern?
Ich sehe Dein Menü nicht, es erschien kurz und seitdem lädt die Seite unaufhörlich und nichts ist zu sehen.

Ein Menü ist in HTML ja lediglich eine Liste. Was also jedes Mal neu geladen wird, ist nur diese Liste. Das sind selbst bei ein paar Menüpunkten idR nur ein paar hundert Byte.

Das Aussehen und die Funktionalität wird ja per CSS gemacht, d.h. ist das einmal im Cache, muss es nicht erneut geladen werden.

Dein Menü hat übrigens einen ganz entscheidenden Nachteil: Es funktioniert nur, wenn JavaScript aktiviert ist. Damit KANN es zu einem Nutzbarkeitskiller werden. Ausklappmenüs kann man auch mit CSS machen. Dann klappen die Untermenüs natürlich nicht so langsam aus, aber mich persönlich stört das ohnehin eher.

Wäre es sinnvoll das Menü in einen extra Frame zu legen, der nicht neu geladen wird oder sowas? Ich hoffe ihr wisst was ich meine :).
Aufgabe: Beantworte Dir die Frage selber :-) Und vergiss die Frames.

Gruß,
-Efchen

P.S.: HTML lernen!
 
Sorry für die Fehlinformation :oops:

@Efchen
Danke für die Aufklärung. Ich weis zwar, das man mit include sich das ständige
schreiben von gleichen inhalten spart, aber ich dachte, das da die sachen
nicht städnig neu gelanden werden --> falsch gedacht. (php am lernen)

Liebe Grüße
icon12.gif


iplay
 
Hallo nochmal :)

also ich bin kein kompletter HTML-Neuling. HTML hab ich schon ein paar Jahre auf'm Buckel, aber halt nichts weiter Weltbewegendes. Auch PHP und CSS an sich sind nicht gänzlich neu. Nur halt das komplette Layouten mit CSS ist Neuland. Ich habe in meiner Firma die bestehende Seite übernommen, die basiert halt auf Frames und Tabellen :).

Gut, also der Einwand mit dem Javascript ist super, das wäre mir erstmal entgangen. War so abgelenkt vom eyecandy. Dann werde ich mal sehen, dass ich mir ein CSS-only Menü ohne JS baue. Ist wohl gerade in anbetracht der Zielgruppe auch besser da so kompatibel wie möglich zu sein.

Mit dem PHP include könnte ich mir zumindest den gleichbleibenden Quelltextteil für das Menü auf jeder Seite sparen, oder? Und da ja dann immer auf die gleiche hinterlegte Seite zurückgegriffen wird, sollte die doch dann auch im Browsercache liegen und somit schnell wieder geladen werden?

Danke für eure Hilfe,
der seb.
 
also ich bin kein kompletter HTML-Neuling. Ich habe in meiner Firma die bestehende Seite übernommen, die basiert halt auf Frames und Tabellen :).
Wenn Du Dich mit HTML auskennst, dann weißt Du ja, warum Du keine Tabellen fürs Layout benutzen sollst.
Ich mein, ich weiß nicht, ob Du HTML wirklich kannst, ich weiß nur, dass die meisten, die hier nach CSS fragen, nicht den blassesten aller Schimmer davon haben, was HTML eigentlich ist.

Mit dem PHP include könnte ich mir zumindest den gleichbleibenden Quelltextteil für das Menü auf jeder Seite sparen, oder?
Ja.

Und da ja dann immer auf die gleiche hinterlegte Seite zurückgegriffen wird, sollte die doch dann auch im Browsercache liegen und somit schnell wieder geladen werden?
Nein.

include wird serverseitig ausgeführt. Der Browser weiß aber nichts davon. D.h. die zu includende Seite wird am Server in eine andere Seite reinkopiert und nur das Ergebnis wird an den Browser geschickt. Der kann natürlich nicht Teile einer Seite cachen, sondern nur die ganze Seite.

Gruß,
-Efchen
 
Aha, danke für die Aufklärung :).

Ich hab gestern mal mit einigen Tutorials eigene Multilevel Dropdown-Menüs gebastelt. Von der Funktionalität hier soweit erstmal in Ordnung und schön schlank vom Quelltext. Jetzt muss ich nur noch lernen sie nach meinen Wünschen zu gestalten. Ich melde mich dann spätestens wieder, wenn ich was Vorzeigbares hab, bis dahin ergeben sich sicherlich noch ein paar Fragen.

Wollte mir halt erstmal hieran orientieren, leider wieder JS, finde keine Menübeispiel komplett ohne JS.

Danke erstmal, auch vielen Dank für den include-Tipp!

der seb
 
Zuletzt bearbeitet:
Aha, danke für die Aufklärung :).

Ich hab gestern mal mit einigen Tutorials eigene Multilevel Dropdown-Menüs gebastelt. Von der Funktionalität hier soweit erstmal in Ordnung und schön schlank vom Quelltext. Jetzt muss ich nur noch lernen sie nach meinen Wünschen zu gestalten. Ich melde mich dann spätestens wieder, wenn ich was Vorzeigbares hab, bis dahin ergeben sich sicherlich noch ein paar Fragen.

Wollte mir halt erstmal hieran orientieren, leider wieder JS, finde keine Menübeispiel komplett ohne JS.

Danke erstmal, auch vielen Dank für den include-Tipp!

der seb

Hallo Seb,

ein Drop-Down-Menü hatten wir gerade erst. In diesem Thread findest Du viele Informationen...

Für den IE brauchst Du aber JS, bzw. .htc - das halte ich aber für vertetbar, solange Du
dem IE-Benutzer, der JS deaktiviert hat, eine Alternative anbietest.

Grüße
Bernhard
 
Salut zusammen,

am Freitag hab ich endlich was passendes gefunden heute mal für einen ersten Entwurf angepasst und vor allem den Quelltext für durchgewurschtelt und versucht zu verstehen. Finde das sieht soweit ganz gut aus und bietet die Funktionalität, die ich mir so vorstelle. Und es scheint ohne JS auszukommen, testen konnte ich es bisher im FF3 und IE6.

Dabei ist mir aufgefallen, dass unsere jetzige Seite ebenfalls auf ein JS-Menü setzt und direkt mal nur eine Meldung anzeigt, wenn JS deaktiviert ist ;ugl. Wahrscheinlich würde es also sogar gehen, ging ja bisher auch, aber wenn ich drumrum komme, isses natürlich besser.

@Bernhard: Erstmal danke für den Link! Was für Alternativen könnte man denn bieten, wenn JS deaktiviert ist? Eine Sitemap oder sowas?

Jetzt werde ich mich mal an einem ersten Layout versuchen und mich spätestens mit einem weiteren Entwurf wieder melden.

Bis dahin, viele Grüße,
des seb


€dit:
Soo, ich habe mal 2 einfache Layoutentwürfe gemacht (1, 2). Kann es sein, dass das Menü im IE irgendwie unruhig ist? Auf meinem lokalen xampp merk ich davon nichts. Jemand ne Ahnung woran das liegen könnte? Im FF schaut's gut aus.

Morgen werde ich mal versuchen ein paar Seiten zu erstellen, damit man auch mal was klicken kann. Und eventuell schaffe ich es noch, den aktuell angesurften Hauptmenüpunkt hervorzuheben trotz include.

Meinungen, Hinweise? :)

Viele Grüße,
der seb
 
Zuletzt bearbeitet:
@Bernhard: Erstmal danke für den Link! Was für Alternativen könnte man denn bieten, wenn JS deaktiviert ist? Eine Sitemap oder sowas?

Bis dahin, viele Grüße,
des seb

Hallo Seb,

der einfachste Weg ist, den Menüpunkt, unter dem die Subnavigation ausklappt,
anklickbar zu machen und damit eine Übersichtsseite zu öffnen, die ganz normale
Links zu den gleichen Seiten enthält, wie die Subnavi.

Grüße
Bernhard
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben