Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: CSS Weiche(?) aufgrund der Kategorie

    blitzfreak

    • Fördermitglied
    • Beiträge: 90
    CSS Weiche(?) aufgrund der Kategorie
    am: 23. Februar 2013, 00:07:16
    Hallo miteinander,

    im stylesheet.css des Templates wird unter anderem ja auch das Hintergrundbild des Shops gesteuert. Ich würde gerne - je nach Kategorie - das Backgroundimage mittels einer CSS-Weiche steuern.

    vielleicht hat ja jemand eine Idee oder es sogar schon selbst gelöst.

    danke vorab

    Linkback: https://www.modified-shop.org/forum/index.php?topic=24941.0
    Shop Hosting

    twe

    • Schreiberling
    • Beiträge: 293
    • Geschlecht:
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #1 am: 23. Februar 2013, 01:31:17

    Matt

    • Experte
    • Beiträge: 4.241
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #2 am: 23. Februar 2013, 10:18:30
    Keine der dort vorgestellten Lösungen finde ich überzeugend. Das einfachste ist doch, einem Element, das weit oben im DOM ist, eine Klasse mitzugeben:
    Code: XML  [Auswählen]
    {if $smarty.get.cPath!=''}class="is-category cat{$smarty.get.cPath|strip_tags}"{/if}
    und dann über die Kaskade im CSS Änderungen zu machen.

    Das gleiche kann man auch für Produkte, Sprachen etc. verwenden.

    xxhappyxx

    • Viel Schreiber
    • Beiträge: 829
    • Geschlecht:
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #3 am: 23. Februar 2013, 12:20:50
    Hallo Blitzfreak,

    vielleicht ist das hier
    http://www.modified-shop.org/forum/index.php?topic=7235.msg76449#msg76449

    ja etwas für dich.

    Gruß Thomas

    Matt

    • Experte
    • Beiträge: 4.241
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #4 am: 23. Februar 2013, 12:34:13
    Auch das ist doch unter Performance- und Maintenance-Gesichtspunkten eher Kokolores...

    xxxxxxxxx

    • Fördermitglied
    • Beiträge: 615
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #5 am: 23. Februar 2013, 13:15:55
    Auch das ist doch unter Performance- und Maintenance-Gesichtspunkten eher Kokolores...

    ...... und was würde es brauchen damit Du ein Ideal-Modul für wechselnde Hintergründe schreibst?

    hedon02

    • Viel Schreiber
    • Beiträge: 618
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #6 am: 23. Februar 2013, 13:28:23
    hat er doch schon geschrieben Truecolors  :-).

    @Matt nice, das funzt ja richtig gut, gute Idee.

    Viele Grüsse

    xxxxxxxxx

    • Fördermitglied
    • Beiträge: 615
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #7 am: 23. Februar 2013, 13:39:50
     :-?   natürlich.

    Der Bahnhof kann nicht mehr weit weg sein. Wenn ich jetzt nur wüßte in welche Himmelsrichtung ich gehen soll. LOL

    hedon02

    • Viel Schreiber
    • Beiträge: 618
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #8 am: 23. Februar 2013, 14:02:27
     :-)

    Zitat
    {if $smarty.get.cPath!=''}class="is-category cat{$smarty.get.cPath|strip_tags}"{/if}

    führt zb.: zu
    Code: XML  [Auswählen]
     <div class="is-categorie cat14">
    und kann im stylesheet dann gestylt werden.

    Gruss

    xxxxxxxxx

    • Fördermitglied
    • Beiträge: 615
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #9 am: 23. Februar 2013, 14:12:06
    OK danke, mal schaun, ob mein Kompass aus dem Kaugummi-Automaten was nützt.

    hedon02

    • Viel Schreiber
    • Beiträge: 618
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #10 am: 23. Februar 2013, 14:18:45
    bist Du 12?  :-D

    xxxxxxxxx

    • Fördermitglied
    • Beiträge: 615
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #11 am: 23. Februar 2013, 14:35:13
    bin schon  erwachsen  :-) 

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #12 am: 23. Februar 2013, 16:11:50
    Das einfachste ist doch
    - imho -
    dem body-tag eine id zu vergeben.
    Das lässt sich für alles verwenden was auf der entsprechenden Seite gestylt werden soll/muß und eine ID ist darüber hinaus die schnellste Methode über CSS ein Element (und dessen Kinder) anzusprechen.
    Z.B. in /includes/header.php:
    Code: PHP  [Auswählen]
    // ***** BOC test for body id, noRiddle *****

    $PATH_ID = '';
    if (strpos($PHP_SELF, 'index') && !isset($_GET['cPath']) && !isset($_GET['manufacturers_id'])) {
        $PATH_ID = 'start';
    } elseif (isset($_GET['cPath'])) {
        $cP = $_GET['cPath'];
        $PATH_ID = 'cat-'.$cP;
    } elseif (isset($_GET['manufacturers_id'])) {
        $mID = $_GET['manufacturers_id'];
        $PATH_ID = 'm-'.$mID;
    } elseif (isset($_GET['products_id'])) {
        $pID = $_GET['products_id'];
        $PATH_ID = 'p-'.$pID;
    } elseif (strpos($PHP_SELF, 'search_result')) {
        $sr = 'sr';
        $PATH_ID = $sr;
    } elseif (isset($_GET['coID'])) {
        $coID = $_GET['coID'];
        $PATH_ID = 'co-'.$coID;
    }


    if (strstr($PHP_SELF, FILENAME_POPUP_IMAGE )) {
    echo '<body onload="resize();"> ';
    } else {
    echo '<body id="'.$PATH_ID.'">';
    }

    // ***** EOC test for body id, noRiddle *****

    Damit hätte man folgende IDs
    • auf der Startseite <body id="start">
    • auf Kategorie-Seiten <body id="cat-KATEGORIE_ID">
    • auf Hersteller-Seiten <body id="m-HERSTELLER_ID">
    • auf Produkt-Seiten <body id="p-PRODUKT_ID">
    • auf Suchergebnis-Seiten <body id="sr">
    • auf Content-Seiten <body id="co-CONTENT_ID">

    und ist völlig frei zu stylen was und wie man will...
    ...kann man natürlich noch verfeinern...

    Gruß,
    noRiddle

    Matt

    • Experte
    • Beiträge: 4.241
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #13 am: 23. Februar 2013, 16:39:49
    IDs bergen die Gefahr, dass man sich in Spezifitätsprobleme manövriert. Eine Klasse ist genau so schnell und hat dieses Problem nicht. IDs sollte man für CSS nicht benutzen.

    noRiddle (revilonetz)

    • Experte
    • Beiträge: 13.990
    • Geschlecht:
    Re: CSS Weiche(?) aufgrund der Kategorie
    Antwort #14 am: 23. Februar 2013, 18:00:02
    Wie meinst du das denn ?
    Spezifitätsprobleme ?
    Aufgrund der Cascade in CSS gibt's doch gar keine Probleme.
    Man kann sein Stylesheet einfach so belassen und für die Änderungen auf einer bestimmten Seite setzt man den body#ID-Selektor vor die anzusprechenden Selektoren und Befehle.

    Schnelligkeit:
    Sowohl Javascript als auch CSS findet IDs schneller als Klassen, ist ja auch klar, weil sie "unique" sind.
    (Ausnahme in Javascript: ich speichere eine Klasse in eine Variable bevor ich sie mit events o.ä. bepflastere (sowieso klar), aber selbst dann, muß das ganze DOM durchlaufen werden um alle Elemente mit der entspr. Klasse rauszufiltern und in die var zu speichern.)
    Eine CSS-ID, umsomehr wenn sie auch noch dem Hauptcontainer (body) vergeben wurde, ist super-schnell.

    Bei meinem Ansatz für den body-tag eine ID/Klasse zu setzen, wäre eine Klasse auch nicht förderlich, denn es wird sie ja ohnehin nur einmal geben, also: ID

    Gruß,
    noRiddle
    1 Antworten
    2054 Aufrufe
    03. April 2014, 13:21:56 von Godzilla
    4 Antworten
    5010 Aufrufe
    08. Mai 2011, 13:57:10 von jederzeyt
    4 Antworten
    3913 Aufrufe
    13. Juli 2009, 15:11:00 von mantis
    1 Antworten
    2405 Aufrufe
    23. April 2012, 00:42:28 von vr