Wenn dies dein erster Besuch hier ist, lies bitte zuerst die Hilfe - Häufig gestellte Fragen durch. Du musst dich vermutlich registrieren, bevor du Beiträge verfassen kannst. Klicke oben auf 'Registrieren', um den Registrierungsprozess zu starten. Du kannst auch jetzt schon Beiträge lesen. Suche dir einfach das Forum aus, das dich am meisten interessiert.
Hallo zusammen,
ich habe auch auf die v2.8 umgestellt und nutze die svg Dateien. Das klappt auch sehr gut. Allerdings habe ich festgestellt, dass sich die icons zwischen aktiv und inaktiv leicht nach unten verschieben. Das ist in meinem Design leider nicht sehr schön und war bei den png Icons davor nicht der Fall. Daher wollte ich mal fragen, ob ich vielleicht etwas falsch mache. Anbei mal zwei Bilder die es verdeutlichen sollen.
Links die inaktiven Icons und rechts die aktiven. Im zweiten Bild habe ich mal versucht mit ein paar Linien zu verdeutlichen, was ich meine. Bei der Steckdose ist das nicht so schlimm, aber der Kompressor zum Beispiel verschiebt mir sogar den Text, den ich darunter geschrieben habe und vergrößert die Zeile um ein paar Pixel.
versuch doch mal für die beiden Zustände 0 und 1 den gleichen Text zu verwenden. (statt An und Aus - An und An) um zu testen ob nicht der Text der Verursacher der Verschiebung ist.
Gruß Ivan
Hi zusammen,
ja mit dem gleichen Text habe ich es auch probiert. Aber leider der gleiche Effekt. Ich verstehe nicht, wo das Problem liegt, da es eigentlich alles richtig aussieht. Duch das "hide" müsste ja der ganze <span> Tag versteckt werden.
Nun habe ich mir ein Symbol mit zwei Zuständen gebaut und damit funktioniert es. Es verschiebt sich zwar immer noch ein Stück, wie bei der Steckdose auch, aber der Text bleibt an der gleichen Stelle. Damit komme ich erstmal zurecht. Wobei die Frage bleibt, warum das "hide" diese Verschiebung verursacht.
Hier meine Lösung. Sie ist so ein Zwitter aus basic.symbol und basic.switch:
Code des eigenen Widgets in der widget_my.html
Code:
/**
* A symbol display with two icons, selectable color
*
* @param unique id for this widget
* @param a item
* @param the pic for the 'on' state (optional, default control_on_off.svg)
* @param the pic for the 'off' state (optional, default control_on_off.svg)
* @param value for the 'on' state (optional, default 1)
* @param value for the 'off' state (optional, default 0)
* @param the color for the 'on' state 'icon0' or e. g. '#f00' for red (default 'icon1' of the design)
* @param the color for the 'off' state 'icon1' or e. g. '#f00' for red (default 'icon0' of the design)
*/
{% macro lsymbol(id, item, pic_on, pic_off, val_on, val_off, color_on, color_off) %}
{% set uid = uid(page, id) %}
<span id="{{ uid }}" data-widget="basic.lsymbol" data-item="{{ item }}"
data-val-on="{{ val_on|default('1') }}" data-val-off="{{ val_off|default('0') }}"
data-pic-on="{{ pic_on|deficon('control_on_off.svg') }}" data-pic-off="{{ pic_off|deficon('control_on_off.svg') }}"
class="switch icon">
{% if color_off is empty %}
<img id="{{ uid }}-off" class="icon" src="{{ pic_off|deficon('control_on_off.svg') }}" />
{% elseif color_off == 'icon1' %}
<img id="{{ uid }}-off" class="icon icon1" src="{{ pic_off|deficon('control_on_off.svg') }}" />
{% else %}
<img id="{{ uid }}-off" class="icon icon1" style="stroke:{{ color_off }}; fill:{{ color_off }};" src="{{ pic_off|deficon('control_on_off.svg') }}" />
{% endif %}
{% if color_on is empty %}
<img id="{{ uid }}-on" class="icon icon1 hide" src="{{ pic_on|deficon('control_on_off.svg') }}" />
{% elseif color_on == 'icon0' %}
<img id="{{ uid }}-on" class="icon hide" src="{{ pic_on|deficon('control_on_off.svg') }}" />
{% else %}
<img id="{{ uid }}-on" class="icon icon1 hide" style="stroke:{{ color_on }}; fill:{{ color_on }};" src="{{ pic_on|deficon('control_on_off.svg') }}" />
{% endif %}
</span>
{% endmacro %}
Damit wird das Symbol richtig angezeigt, aber sobald ich das Licht über die Visu einschalte, was auch funktioniert, ändert sich die Farbe nicht und was schlimmer ist, ich kann die Licht nicht mehr über einen erneuten Klick ausschalten.
Alle Widgets und svgs umzustellen ist schon sehr mühsam by the way, ich spar mir das vorerst.
Kann ich verstehen - ich habe eine gefühlte Ewigkeit dafür gebraucht. Leider bringt es an Ladegeschwindigkeit nichts - eher im Gegenteil. der Flaschenhals liegt in den Clients bei der Verarbeitung der Javascripts und Rendern, bei mir schlägt das mit mehr als 90% der Ladezeit zur Buche. Mit Core 2 Duo 3.0GHz als Backend und iPad Air als Client liege ich bei 8 Sekunden Ladezeit. Erst ab i7 als Client gehts Flott - leider habe davon keinen an der Wand hängen...
kann ich bestätigen - ich nehme an, Cache ist bei Dir auch deaktiviert, da Produktiv- und Entwicklungsplattform gleich sind? Die Ladezeiten sind hier ähnlich. Wobei ich mich frage, was mehr Rechenleistung verbrät - das doch recht komplexe JS oder das Rendering. Das Interpretieren von SVG oder das Skalieren von PNG sollten aber nach meinem (laienhaften) Verständnis beim Rendering von den paar Icons nicht wirklich einen Unterschied machen ...
Ich frag jetzt auch mal ganz blöd, wo ich die css o.ä. anpassen muss. Ich bau ja grad meine Visu erst auf. Dort sehe ich das normale Icon, beim Klick findet er aber das andere dann nicht (kann er auch nicht, wenn ich mir den Pfad im Quelltext anschaue:
Oder bin ich da jetzt einfach zu früh dran (v 2.8)? Und noch eine Frage - könnte ich das Ganze auch umstellen, dass die html-Endungen stattdessen php-Endungen sind oder ist das ein größerer Aufwand?
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar