Conditionals für Widgets

Heffalump

Bekanntes Mitglied
Lizenzinhaber
Registriert
6. Apr. 2014
Beiträge
945
Punkte
133
XF Version
  1. 2.1.2
PHP-Version
7.3
Provider/Hoster
FC-Hosting
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?
 
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?
 
Danke. Das klingt einfach und ich teste es heute Abend mal.
 
Was muss ich denn für

.deinWidget

angeben?

@widget und ID?
 
Code:
[data-widget-id="29"] {
   display: none !important;
}

zb ...

Die Nr halt durch die jeweilige ersetzen
 
Zuletzt bearbeitet:
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?
 
bei mir funktioniert es... nutze dafür allerdings ein custom css template
musst natürlich noch das zuvor genannte media querie hinzufügen
 
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.
 
Das hier funktioniert auch nicht:

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

:smoke:
 
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.
 
Also alles was ihr in die extra.css schreibt wird ausgeführt.
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.
 
Nicht wenn innerhalb der Datei ein Befehl kommt, der dem widerspricht.
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.
 
!important ist und bleibt eine nicht zu empfehlende Variante. Kann aber jeder machen wie er will.. :smoke:

4E708371-E5FC-445B-9AEB-57DB5D59B145.jpeg
 
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.
 
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.
 
gib mir mal den link, würd mir das gern mal im Inspektor ansehen
 
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
 
Zurück
Oben