2017-09-19 4 views
1

Kann mir jemand sagen, wie man die Höhe des Elements am besten gleich wie die Breite einstellt? Es sollte auch automatische Skalierung entsprechend Webbrowser-Auflösung Änderungen haben. Gibt es eine Wato mit nur HTML-Vorlage? Etwas wie:Angular2 Set Elementhöhe wie Breite

<div 
    class="tile" 
    #square 
    [ngStyle]="{'height.px': square.width}"  
> 
+0

Ich glaube, Sie müssen verwenden '' JavaScript' & CSS' –

+0

kennen Sie die Breite des yurzui geht "div"? setzt du es mit der 'tile' Klasse? – Faisal

+1

Sie wussten nicht über 'offsetWidth'? – yurzui

Antwort

2

HTML:

<div #div (window:resize)="0" [ngStyle]="{'height.px': div.offsetWidth }"> 

DEMO

Alle Kredit

+1

wie ich verstehe, möchte OP nicht eine fest codierte Höhe festlegen! – Faisal

+0

sehe meine Antwort für eine einfache Lösung, ohne etwas anderes in TS-Code hinzufügen zu müssen. – Faisal

+2

Der Unterschied ist die Fähigkeit, das Verhältnis auf der Fenstergröße zu halten – Vega

1

Sie müssen square.offsetWidth verwenden:

<div 
    class="tile" 
    #square 
    [ngStyle]="{'height.px': square.offsetWidth}"  
> 

Link zu working demo.