Bootstrap 5 icons lokal

  • Hallo,


    Wie kann man die Bootstrap 5 icons lokal benutzen. (bootstrap-icons-1.2.0)


    Folgendes habe ich gemacht:

    Fonts im Ordner Fonts meines Template (Cassiopeia Kopie) eingefügt.

    bootstrap-icons.woff

    bootstrap-icons.woff2


    Font-face in der user.css eingefügt:

    Code
    @font-face {
        font-family: 'bootstrapicons';
        src: url('../fonts/bootstrap-icons.woff2') format('woff2'),
             url('../fonts/bootstrap-icons.woff') format('woff');
        font-weight: normal;
        font-style: normal;
    }


    bootstrap-icons.css im CSS Ordner eingefügt.


    Folgender Code wird benutzt :

    <i class="bi bi-display"></i>


    Icons sind nicht sichtbar.


    Müssen noch die svg icons lokal ? Wenn ja, wo kommen die icons hin ?


    Von hier wurde das Packet geladen:

    Bootstrap Icons v1.2.0
    Our latest Bootstrap Icons release includes dozens of new icons, redesigned documentation, and the most highly requested new feature—icon fonts! New social…
    blog.getbootstrap.com


    (Download just the SVGs and fonts)

  • Danke drmenzelit ,

    Ich denke du meinst ich sollte noch etwas in de index.php meines Template anpassen ? Was genau weiss ich nicht.

    Werde es mir morgen mal anschauen


    ------


    Danke WM-Loose ,

    Gut zu wissen. Doch im Moment weiss ich nicht mal ob ich die svg icons lokal und wo ich diese laden müsste.


    Ok, habe jetzt folgender Code in der index.php eingefügt:


    PHP
    <?php
        JHtml::_('stylesheet', JUri::root() . 'templates/' . $this->template .
        '/css/bootstrap-icons.css');
    ?>



    Es ist also schon besser da jetzt ein «Platzhalter» zu sehen ist, aber das Icon immer noch nicht.


    In welchen Ordner gehören die svg icons den hin ?

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von Stef mit diesem Beitrag zusammengefügt.

  • Der Ordner /fonts/ aus dem Bootsrap-Icons-Paket muss im selben Ordner sein wie die bootstrap-icons.css.


    Was du in der user.css eingesetzt hast, musst du rausnehmen.


    Generell: Wenn du Vierecke statt Zeichen siehst auch immer prüfen, ob man evtl. das Http-Header-Plugin falsch konfiguriert hat. Kann auch mal vorkommen.


    In welchen Ordner gehören die svg icons den hin ?

    Die extra SVG-Icons sind bei deiner Vorgehensweise nicht nötig, weil sich diese ja in den Fonts befinden; sozusagen.

  • Wow, vielen Dank Re:Later ,


    Es funktioniert, svg icons sind sichtbar, ganz ohne @font-face in der user.css

    Fonts Ordner im Ordner meinTemplate/css abgelegt.

    Keine svg Bilder lokal nötig


    Ok, also etwas stimmt doch noch nicht. Denke hatte einen Cache Problem. Habe alles wie im Post #8


    Werde morgen weiter versuchen...

    Einmal editiert, zuletzt von Indigo66 () aus folgendem Grund: Ein Beitrag von Stef mit diesem Beitrag zusammengefügt.

  • Danke drmenzelit ,

    Dort hast du auch 2 zusätzliche css Dateien (icons.css und icons.min.css)

    habe ich kopiert und in meinem css Ordner eingefügt.


    Folgende Anweisung habe ich bei mir in der index.php von dir kopiert, doch ich bekomme eine 404, diesen Code kann ich nicht 1 zu 1 benutzen denke ich.


    Dein Template ist unter media/….

    Mein Template unter template/templateName


  • Nein, du kannst mein Code nicht 1 zu 1 übernehmen, weil ich Parameter in meinem Template habe, die die Auswahl von Fontawesome oder Bootstrap Icons steuern.
    Meine icons.css ist eine Mapping Datei für Joomla Icons.
    Seit Joomla 4.1.1 oder so sind die Assets (css, js, images) eines Templates unter media. Vielleicht hast du noch eine ältere Version im Einsatz.

  • Ja, ich benutzte eine Kopie vom Cassiopeia wie unter #1 und meine Assets befinden sich unter template/meinTemplate


    Was heisst dass jetzt für meinen Fall ? Kann ich dein Beispiel vom Nature Template nicht benutzen ?

  • Ok, ich würde eher dazu raten ein Child Template anzulegen, statt eine Kopie von Cassiopeia zu machen. Der Code von Nature muss auf deiner Bedürfnisse angepasst werden. Im Prinzip reicht es das hier:

    Code
    $wa->registerAndUseStyle('bi-icons', $templatePath . '/css/bootstrap-icons.css');
    $wa->registerAndUseStyle('icons', $templatePath . '/css/icons.css');

    $templatePath muss für dein template gesetzt werden. Und die css Files müssen dementsprechend da liegen. Und in bootstrap-icons.css muss der Pfad zu den woff / woff2 Fonts passen.