CSS Kann CSS das?

Cool Master

Fleet Admiral
Registriert
Dez. 2005
Beiträge
40.084
Hallo,

ich habe auf http://www.architekt-hofbauer.de/ gesehen was der Betreiber unter "Projekte" hat nun ist das allerdings mit Flash gemacht :rolleyes: Ist es möglich so etwas in CSS umzusetzen?

Also unten die Thumbnails und bei Hover kommt man zu einem großen Bild? Die Links Rechts müssten nicht da stehen da ich das anderst umsetze mit einer kleinen Bilder Galerie.
 
Mit CSS alleine denk ich eher weniger. Dafür sollte man am besten Javascript benutzen.
 
Mit CSS alleine könnte es etwas schwierig werden, mit AJAX solltest du das allerdings hinbekommen. ;)
 
alles klar werde ich mir mal anschauen :)
 
AJAX = JS und ich würde am besten gleich auf ein Framework zurückgreifen. Meine Empfehlung: jQuery.
 
Das ist auch eine gute Lösung. Dahin gingen meine Gedanken auch das nur mit CSS zu lösen. Aber ich hatte nichts ausprobiert. Da es sehr einfach ist und mit allen gängigen Browsern kompatibel würde ich im Zweifel wohl eher dazu greifen ;)
 
@ Mr. Snoot

ja das sieht auch ganz nett aus! Ich habe mir mal http://coffeescripter.com/code/ad-gallery/ runtergeladen um zu sehen ob ich das soweit anpassen kann wie ich es bräuchte.

Zwecks Browser ist eh nur IE8+ relevant da ich 6 und 7 nicht mehr unterstütze. Die ganzen Open Source Browser sind eh kein Problem da diese mit Standards 100 mal besser umgehen.
 
Wenn es dir genau so reicht, wie es da zu sehen ist, dann geht das problemlos mit HTML und CSS bzw. nur mit HTML.

Code:
<div id="content">
    <ul id="galleryNav">
        <il><a href="#galleryItem1">Item 1</a></li>
        <il><a href="#galleryItem2">Item 1</a></li>
        <il><a href="#galleryItem3">Item 1</a></li>
        <il><a href="#galleryItem4">Item 1</a></li>
    </ul>
    <div id="gallery">
        <div id="galleryItem1">Gallery Content</div>
        <div id="galleryItem2">Gallery Content</div>
        <div id="galleryItem3">Gallery Content</div>
        <div id="galleryItem4">Gallery Content</div>
    </div>
</div>

In CSS musst du nun das Folgende umsetzen:

- die Navigation der Gallery mit "position: absolute" und "z-index: 1" auf der z-Achse über dem Gallery-Content anordnen
- im Content-Container und im Gallery-Container den "overflow" auf "hidden" setzen und beiden Containern die gleiche Breite geben
- den div-Container im Gallery-Container die gleichen Dimensionen geben wie den beiden übergeordneten Containern geben.

Wie du vielleicht schon erahnt hast, steuerst du die gewünschten Gallery-Container einfach über deren ID an. Alles andere ist geschickte Verschachtelung der Container, damit nur der gewünschte Content gerade Platz im Wrapper hat.

Vorteile: Du brauchst kein JavaScript/jquery/AJAX
Nachteil: Beim Aufruf der Seite muss jeder Gallery-Inhalte geladen werden, auch jener, der zu dem Zeitpunkt gar nicht angezeigt wird.

Mit jquery/ajax könntest du steuern, dass nur der Content geladen wird, der auch angezeigt werden soll. Außerdem könntest du mit Animationen arbeiten. An der Stelle würde ich auch definitiv mit einem Framework wie jquery arbeiten, zum einen du mit jquery keinen Umweg über php-Daten gehen musst und intutiv mit HTML arbeiten kannst, zum anderen weil du alle jquery-Aktionen über eine separate js-Datei ausführen kannst und den HTML-Code frei von fremden Code halten kannst. Der Nachteil eines Frameworks kann sein, dass die Darstellung und Animation der Seite furchtbar langsam werden kann, wenn man den Code nicht sauber strukturiert. So kann jquery zwar so ziemlich jedes DOM-Element abgreifen, aber das kann furchtbar langsam sein, weshalb man wenn möglich immer mit eindeutigen IDs arbeiten sollte.

Wenn du noch keine Ahnung von JavaScript hast, würde ich erst einmal die HTML-Lösung umsetzen und dann im nächsten Schritt eine Lösung mit jquery o.Ä. erarbeiten.

Edit:
Kleiner Tipp, um einen Container zu zentrieren.

Code:
#content {
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    position: absolute;
}

Wobei du den Abstand zu den Rändern, etwa auch zum oberen Rand, variieren kannst. Ohne fixe dimensionen wird der Container so groß wie möglich (also 100%).
 
Zuletzt bearbeitet:
Ui GevatterTod,

das ist mal eine Erklärung :) Ich kenne mich zwar schon ein wenig mit JS aus allerdings nicht so gut wie mit HTML/CSS. Ich denke der nachteil mit dem Laden wird wett gemacht durch ein System sprich nur HTML und CSS. Zu dem Werden max 8 Bilder in die Navigation kommen und die werden zirka 200-300 kb haben was selbst DSL 1K ohne probleme packen sollte.

Ich habe ja die JS Gallerie schon umgesetzt allerdings merke ich schon das sie mit der Bild Auflösung teilweise schon ein wenig lagt was aber auch an meinem MBP liegen kann da der schon ein paar Tage älter ist werde ich mal testen müssen mit meinem Rechner.
 
Cool Master schrieb:
Zwecks Browser ist eh nur IE8+ relevant da ich 6 und 7 nicht mehr unterstütze. Die ganzen Open Source Browser sind eh kein Problem da diese mit Standards 100 mal besser umgehen.

Wobei der IE7 nur minimale Anpassungen brauch und eigentlich recht leicht in den Griff zu bekommen ist. Der IE7 wird noch reichlich genutzt.
Eine Seite sieht immer unprofesionell aus wenn sie zerschossen im Browser auftaucht, wenn du also diese Browser garnicht unterstützen willst dann würde ich sie auch sperren. Oder besser, auf einer kleinen Infoseite umleiten - das ist dann sehr freundlich und manche User kommen dann ggf. sogar mit einem Browser zurück ;)
 
Code:
<!--[if lt IE 8]> <div style=' clear: both; height: 59px; padding:0 0 0 15px; position: relative;'>  <a href="http://windows.microsoft.com/en-US/internet-explorer/products/ie/home?ocid=ie6_countdown_bannercode"><img src="http://www.theie6countdown.com/images/upgrade.jpg" border="0" height="42" width="820" alt="Willkommen leider musste ich feststellen, dass Sie noch den Internet Explorer 6 oder 7 nutzen. Bitte Upgraden Sie auf Internet Explorer 8 oder die neuste Version 9.0 vielen Dank :)" /></a></div> <![endif]-->
;)
 
Zurück
Oben