Conditionals für Widgets

Dieses Thema im Forum "Diskussionen rund um XenForo" wurde erstellt von Heffalump, 22. Okt. 2018.

  1. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Weil ich bei XF keine Antwort bekomme versuche ich es mal hier.
    Kann ich über Conditionals erreichen, das ein Widget in der mobilen Ansicht nicht angezeigt wird?
     
  2. McAtze

    McAtze Innendienst Lizenzinhaber

    Masetrix und V0RT3X gefällt das.
  3. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Danke, das klingt nach dem was ich benötige. Aber wie wende ich das an?
    Hast du noch eine Idee wo dieser Code implementiert werden muss damit ein Widget angesprochen wird?
     
  4. V0RT3X

    V0RT3X Bekanntes Mitglied Lizenzinhaber

    ich würde es via css machen, ist doch viel einfacher...

    Code:
    @media screen and (max-width: 767px) {
    .deinWidget {
        display: none!important;
    }
    }
     
    McAtze und Alluidh gefällt das.
  5. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Danke. Das klingt einfach und ich teste es heute Abend mal.
     
  6. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Was muss ich denn für

    .deinWidget

    angeben?

    @widget und ID?
     
  7. shining

    shining Mitglied Lizenzinhaber

    Code:
    [data-widget-id="29"] {
       display: none !important;
    }
    zb ...

    Die Nr halt durch die jeweilige ersetzen
     
    Zuletzt bearbeitet: 23. Okt. 2018
  8. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    In der Form, wie du es angegeben hast dürfte das Widget ja nicht angezeigt werden. Unabhängig ob Mobile View oder nicht.
    Es wird aber trotzdem angezeigt.

    Extra.less ist doch richtig, oder?
     
  9. shining

    shining Mitglied Lizenzinhaber

    bei mir funktioniert es... nutze dafür allerdings ein custom css template
    musst natürlich noch das zuvor genannte media querie hinzufügen
     
  10. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Wenn ich eine neue custom.css anlege lädt er die gar nicht.

    Ich habe jetzt mal das hier in die extra.less eingetragen:
    Code:
    [data-widget-id="17"] {
       display: none !important;
    }
    Das Widget mit der ID 17 wird aber immer noch angezeigt.
     
  11. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Das hier funktioniert auch nicht:

    Code:
    @media screen and (max-width: 767px) {
    [data-widget-id="17"] {
        display: none !important;
    }
    }
    :smoke:
     
  12. Tealk

    Tealk Aktives Mitglied Lizenzinhaber

    Schreib es so:
    Code:
    @media (max-width: @xf-responsiveMedium)
    {
        .block[data-widget-id="17"] {
           display: none;
        }
    }
    Und Leute, bitte kein !Important nehmen, das kann böse ins Auge gehen.
    CSS wird der reihe nach geladen, die extra.css ist schon ganz am ende dieser Reihe. Also alles was ihr in die extra.css schreibt wird ausgeführt.
     
  13. shining

    shining Mitglied Lizenzinhaber

    Nicht wenn innerhalb der Datei ein Befehl kommt, der dem widerspricht.
    !important ist kein Teufelswerk sondern ein ganz simpler Befehl der nur sagt das dieser Befehl wichtiger ist als alle anderen.
     
  14. Tealk

    Tealk Aktives Mitglied Lizenzinhaber

    Dann muss es aber am ende der Datei stehen und dann wundert man sich warum es nicht mehr geht...
    Aber ja nur meine bescheidene Meinung wenn ihr das anders machen wollt könnt ihr das gern, dann bin ich aber bei der Bugfindung raus.
     
  15. McAtze

    McAtze Innendienst Lizenzinhaber

    !important ist und bleibt eine nicht zu empfehlende Variante. Kann aber jeder machen wie er will.. :smoke:

    4E708371-E5FC-445B-9AEB-57DB5D59B145.jpeg
     
  16. shining

    shining Mitglied Lizenzinhaber

    Es hat doch auch niemand gesagt, dass es immer verwendet werden soll. Logisch das so ein Befehl kontraproduktiv ist, wenn man es übertreibt. Es ist manchmal schon echt nervig, was einem hier immer in den Mund gelegt wird. Könnt wieder runter fahren.
    Da es beim Fragenden nicht zu klappen schien, war es einen Versuch wert.
     
    V0RT3X und McAtze gefällt das.
  17. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

    Danke für eure Mühe, aber irgendwie funktioniert das bei mir nicht. Ich bin im richtigen Style und verwende die extra.less, die ich bisher für alles verwendet habe und das wird auch ausgeführt.
    Aber ein blödes Widget lässt sich einfach nicht unsichtbar machen. Weder mit noch ohne !important.

    Irgendwie schade, dass das kein Standard ist. Im Widget-Framework unter 1.5 gab es eine Schaltfläche zur Deaktivierung des Widgets in der mobilen Ansicht.
     
  18. Tealk

    Tealk Aktives Mitglied Lizenzinhaber

    gib mir mal den link, würd mir das gern mal im Inspektor ansehen
     
  19. Heffalump

    Heffalump Bekanntes Mitglied Lizenzinhaber

  20. Tealk

    Tealk Aktives Mitglied Lizenzinhaber

    ehm ich müsst deine hp sehen dazu ein screen bringt mir da wenig, deswegen hab ich ja gemeint mit dem inspektor das nen FF tool wo man sich den code ansehen kann und schauen warum was nicht passiert
     
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden