2017-09-19 11 views
1

要素の高さを幅と同じに設定するにはどうすればよいですか?また、Webブラウザの解像度の変更に応じて自動スケーリングが必要です。唯一のhtmlテンプレートでそれにwatoはありますか?何かのように:角度2の設定要素の高さは幅と同じ

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

をyurzuiに行く私はあなたの幅を知っていますかあなたは 'JavaScript'&' CSS' –

+0

を使用する必要があると思います'div'?あなたは 'tile'クラスを使ってそれを設定していますか? – Faisal

+1

あなたは 'offsetWidth'について知りませんでしたか? – yurzui

答えて

2

HTML:

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

DEMO

すべてのクレジットは

+1

私が理解しているように、OPはハードコードされた高さを設定したくありません! – Faisal

+0

tsコードで何も追加する必要なしに、簡単な解決策について私の答えを見てください。 – Faisal

+2

違いは、ウィンドウ上の比率を維持する能力です – Vega

1

あなたはsquare.offsetWidthを使用する必要があります。working demo

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

リンク。