Größe HTML-Box

Hallo,
ich breche mir schon den ganzen Tag einen ab um eine bestimmte Größe einer HTML-Box zu realisieren. Kann mir bitte mal jemand auf die Sprünge helfen …
Danke
Gruß Wolfgang

Hallo Wolfgang,
wie sieht denn dein bisheriger Versuch aus? Seitens IP-Symcon schnappt sich die Box einfach so viel Platz wie sie braucht. Du musst also die richtige Größe von „innen“ setzen. Das würde ich mit einem div um den eigentlichen Inhalt realisieren, z.B.:

<div style="width: 250px; height: 250px;">
   <!-- Eigentlicher Inhalt>
</div>

Erstmal Danke! Die Höhe klappt mit

, aber die Breite mit „width“ klappt nicht. hier ist es egal ob das ein Wert angegben ist oder kein width.
Hier dsas Script:

<?php

$out = '<head>';
$out .=     '<style type="text/css">';

$out .=     '.TextWhite {color:white; background-color:green;font-size:10px;padding:10px 10px 10px 10px; width:80px; text-align:left;}';
$out .=     '.TextWhite2 {color:white; background-color:green;font-size:10px;padding:10px 10px 10px 10px; width:10px; }';
$out .=     '.tr:hover {background:yellow; color: black;}';

$out .=     '</style>';
$out .= '</head>';

$out .= '<body>';
$out .=  
         '<div style="width: 400px; height: 300px;">';
$out .=    '<table border="1" width="220" cellspacing="1" >';  

$out .=     '<tr>';
$out .=         '<td class="TextWhite" > Strom1 (L) </td>';
$out .=         '<td class="TextWhite2" >' . GetValueFloat(11834). ' A </td>';
$out .=     '</tr>';
$out .=     '<tr>';
$out .=         '<td class="TextWhite"> Strom2 (J) </td>';
$out .=         '<td class="TextWhite2">' . GetValueFloat(52279).' A</td>';
$out .=     '</tr>';
 
$out .=     '<tr>';
$out .=         '<td class="TextWhite"> usw. (E) </td>';
$out .=         '<td class="TextWhite2">' . GetValueFloat(44314).' A</td>';
$out .=     '</tr>'; 
 
 
$out .=     '</table>';
$out .=     '</div>';

$out .= '</body>';
 
SetValueString(44259, $out);

Das Webfront sieht dann so aus:

Die HTNL-Box soll möglichst nur so groß wie die Tabelle sein.

Das ist ein HTML und Tabellen Problem und „selbst verursacht“ :wink: .

Versuch mal dein

<table border="1" width="220"

auf

<table border="1" width="99%"

zu setzen.

Hallo Ralf,
mit 99% ändert sich nur die Tabellenbreite etwas. Ist natürlich vom ‚div‘ abhängig. Da hast Du recht. Vielleicht habe ich mich falsch ausgedrückt. Das Fenster „Strom“ soll nur so groß wie die Tabelle sein. Wahrscheinlich kann ich das aber nur im Webfront mit einem Seitenteiler realisieren?..

Für die Anwendung würde mich interessieren, wie bekomme ich den Floatwert in dem HTML-Code (hier Strom) in eine 2-stellige Komma-Zahl konvertiert.
Edit: und rechtsbündig?

Die Variable hat ein entsprechendes Profil …

Richtig: Variable hat das Profil ~Ampere , nur als Float in HTML-Code eingebunden, nimmt es alle Kommastellen ;-(

Ich habe das gerade mal selbst getestet: Die Höhe von 300px ist halt deutlich mehr als die Tabelle, daher ist darunter so viel Freiraum. Was genau wolltest du mit einer bestimmten Größe erreichen? Was ist dein Wunschergebnis?

@Helmut: Verwende am besten GetValueFormatted, dann wird auch das Profil berücksichtigt.

1 „Gefällt mir“

@Dr.Niels - die Höhe ist klar, funktioniert …
Vielleicht habe ich mich falsch ausgedrückt. Das Fenster „Strom“ soll nur so groß wie die Tabelle sein. Oder kann ich das nur im Webfront mit einem Seitenteiler realisieren?..

Dann mußt Du die Zeile
$out .= div style="width: 800; height: 200px;';
anpassen, wenn ich es nicht auch falsch verstehe…

@Helmut : Danke für das → GetValueFormatted. Das wäre das nächste Problem gewesen :grinning:

Das ist Dr Niels zu verdanken, mir fehlt noch rechtsbündig :wink:
Ich hatte mich auch mal versucht in HTML , hatte es aufgegeben, jetzt wieder entdeckt, dank Deiner Frage.

@Helmut : Hm, ich weiß nicht wie ich mich ausdrücken soll. Das Fenster Strom ist ja viel größer als die Tabelle. Natürlich kann ich jetzt die Tabelle so groß machen, dass das Fenster ‚STROM‘ voll ausgefüllt ist. Da die Tabelle aber viel kleiner ist, müßte man das Fenster ‚STROM‘ kleiner machen.

rechtsbündig → steht bei mir in der CSS Definition

$out .= ‚.TextWhite2 {color:white; background-color:green;font-size:10px;padding:10px 10px 10px 10px; width:10px;text-align:right;}‘;

rechtsbündige Zahl ist in der zweiten Zeile
Ein Bild

@Helmut : was meinst Du mit dem ‚Div-Kringel‘? Ich meine die 2. Spalte der Tabelle, die mit der class TextWhite2 definiert ist, wird rechstsbündig ausgegeben.

Der Kringel ist für mein rechtsbündiges Ampere :wink:
Bezeichnung linksbündig, erste Zeile, zweite Zeile mit Kringel :Strom rechtsbündig in Ampere

Der zweite Kringel sollte die Angabe „Höhe“ für die HTML Box sein.

Ich verstehe noch nicht ganz, was du mit der Breite erreichen möchtest. Die HTML-Box nimmt wie jedes Element im WebFront die gesamte Breite ein. Möchtest du jetzt das eine Element weniger breit haben und rechts davon Leerraum? Oder wie stellst du dir das vor?

Ich hatte ja schon die Vermutung, daß das im Webfront so ist, daß die HTML-Box die gesamte Breite einnimmt. Offensichtlich ist das dann so. Ich habe mir eigentlich mehr von der Anwendung HTML im Webfront versprochen. Aber was solls. Ich warte dann lieber auf das neue Webfront. Ich hoffe, daß das etwas flexibler als das bisherige wird. Das Thema ist für mich erst mal erledigt.

Aber Danke für die Beiträge!
Gruß Wolfgang

So schlecht ist die HTML Geschichte nun auch nicht, wenn man mehr haben will muß man dessen Möglichkeiten kennen, also HTML-Wissen haben, ich habe es nicht. Deshalb gibt es IPSVIEW und die neuen Möglichkeiten von IP-Symcon versprechen einiges.