XHTMLforum

XHTMLforum (http://xhtmlforum.de/index.php)
-   (X)HTML (http://xhtmlforum.de/forumdisplay.php?f=72)
-   -   Mehrere Angaben im Style-Tag möglich? (http://xhtmlforum.de/showthread.php?t=73881)

Sunlion 17.07.2019 18:54

Mehrere Angaben im Style-Tag möglich?
 
Ich habe eine Webseite mit mehreren Viewport-Größen-Angaben in den Stylesheets, was auch wunderbar funktioniert, das heißt, die Webseite passt sich an verschiedene Monitorauflösungen an.
Es gibt auf der Seite jedoch auch eine einzelne Div-Box, die mittels Style-Tag im HTML-Bereich unterschiedliche Werte für verschiedene Monitorauflösungen zugewiesen werden sollen, also nicht über die CSS-Dateien. Und ich kann nirgends etwas darüber finden, ob das funktioniert.
So sieht der Code aus:

Code:

<div class="subspalte2" style="left: -88px">


</div>

Der Style-Tag soll unterschiedliche Werte für left bekommen, die je nach Monitorauflösung angewendet werden. Ist das möglich?

Sunlion 17.07.2019 22:01

Ich habe mal das hier probiert, abgeleitet von der Syntax in CSS, leider funktioniert es nicht. Aber es verdeutlicht, was ich meine:

Code:


<div class="subspalte2" style="@media only screen and (max-width:2559px) and (max-height:1439px){left: -88px} @media only screen and (max-width:2559px) and (max-height:1000px){left: -100px} @media only screen and (max-width:1919px){left: -200px}">


cloned 18.07.2019 08:22

Zitat:

Zitat von Sunlion (Beitrag 553770)
Es gibt auf der Seite jedoch auch eine einzelne Div-Box, die mittels Style-Tag im HTML-Bereich unterschiedliche Werte für verschiedene Monitorauflösungen zugewiesen werden sollen, also nicht über die CSS-Dateien.?

Warum? Du kannst in deinen CSS Dateien die Werte die im Style Tag definiert werden mittels !important überschreiben.

Sunlion 18.07.2019 09:09

Das hilft leider nicht.
Stell Dir einfach vor – es gibt noch neun weitere von dieser Div-Box, die über die Seite verteilt sind. Für diese gibt es in den CSS-Einstellungen einen Standardwert, der überall passt.
Er passt nur nicht für die eine Div-Box, die befindet sich nämlich am rechten Rand der Seite und würde mit dem Standardwert über den Seitenrand hinausragen. Deshalb benötigt sie einen individuellen Wert, der sie über den Rand nach links „zurückzieht“.
Das funktioniert auch. Allerdings nur bei einer bestimmten Bildschirmauflösung. Für die anderen Auflösungen werden andere Werte benötigt. Und die würde ich gern hintereinander im Style-Tag eingeben.
Inzwischen habe ich aber eine Nacht drüber geschlafen und bin zu der Erkenntnis gelangt, dass ich ebenso gut eine neue Klasse in der CSS-Datei definieren kann, nämlich speziell für die Div-Box, die am Rand liegt. Kommt aufs selbe raus.

cloned 18.07.2019 12:40

Ich würde hier eventuell den gesamten Aufbau der Seite nochmal überdenken, so spezifische left Angaben sind eigentlich nie nötig. Außer es ist ein absolut positioniertes Element was ein anderes so überlappen soll.

Dein Element hat doch schon eine CSS klasse, da musst du keine neue definieren.

<div class="subspalte2" style="left: -88px"> <- subspalte2

Falls es mehrere solche Elemente mit der Klasse gibt dann macht eine eigene Klasse nur für dieses div natürlich Sinn.
Aber du wirst nicht darum herum kommen deine styles im CSS zu definieren.

Sunlion 18.07.2019 12:57

Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von cloned (Beitrag 553776)
Außer es ist ein absolut positioniertes Element was ein anderes so überlappen soll.

Genau, es handelt sich um ein Popup-Fenster, das über einem anderen Element erscheinen soll. Die Position steht auf „relative“. Mit den Werten für Top und Left wird das Fenster an die gewünschte Stelle gerückt.

Sunlion 18.07.2019 14:45

Alles klar, hat sich erledigt. Ich habe einfach eine zusätzliche Klasse angelegt. Ist auch besser so, falls weitere Div-Container notwendig werden, die ebenfalls rechts am Rand liegen.
Danke Euch!


Alle Zeitangaben in WEZ +2. Es ist jetzt 23:08 Uhr.

Powered by vBulletin® Version 3.8.11 (Deutsch)
Copyright ©2000 - 2019, vBulletin Solutions, Inc.

© Dirk H. 2003 - 2019