2017-05-02 10 views
0

は問題だ:あなたが画像で見ることができるように、プロパティはの変換2つのクラスのトランスフォームプロパティをマージするにはどうすればよいですか?ここ

.page-content { 
 
    width: 100%; 
 
    height: 100vh; 
 
} 
 

 
.vertical-align { 
 
    position: absolute; 
 
    top: 50%; 
 
    transform: translateY(-50%); 
 
} 
 

 
.horizontal-align { 
 
    position: absolute; 
 
    left: 50%; 
 
    transform: translateX(-50%); 
 
}
<div class="page-content"> 
 
    <div class="vertical-align horizontal-align"> 
 
    <div class="row"> 
 
     <h1>Test</h1> 
 
    </div> 
 
    <div class="row"> 
 
     <h1>Test</h1> 
 
    </div> 
 
    </div> 
 
</div>

enter image description here

は、ここに私のHTMLCSSです.vertical-alignがオーバーライドされます。

変換プロパティをどのようにマージできますか.vertical-align.horizontal-align

ありがとうございました!

+0

@SankarshMakam done! –

+0

transform:translateY(-50%)!この場合は重要です –

+0

この@NagaSaiAを実行すると、translateXが上書きされます。 –

答えて

2

あなたは1つがそうのように変換さの両方でtransformプロパティを定義することができます。

transform: translateX(-50%) translateY(-50%); 

しかし、私はあなたがそれよりも多くを行うことができるとは思いません。変換プロパティは1つしか存在できません。

+0

ありがとうございました。だから私は、例のために 'center-align'のような第3のクラスを作ることができたと思います。 –

+2

あなたは両方のクラスについても短縮形を使うことができます。 'transform:translate(X、Y)' – disinfor

+0

あまりにも遅いです。あなたの答えはより速く凝縮しました! – Sank6

1

あなたが好きな変換を組み合わせることができます。ここでは

transform: translateX(-50%) translateY(-50%); 

はコードです:

.vertical-align { 
 
    top: 50%; 
 
    transform: translateX(-50%) translateY(-50%); 
 
} 
 

 
.horizontal-align { 
 
    position: absolute; 
 
    left: 50%; 
 
    transform: translateX(-50%) translateY(-50%); 
 
} 
 

 
div.page-content { 
 
    width: 100%; 
 
    height: 100vh; 
 
}
<div class="page-content"> 
 
<div class="vertical-align horizontal-align"> 
 

 
<div class="row"> 
 
<h1> 
 
test 
 
</h1> 
 
</div> 
 

 
<div class="row"> 
 
<h1> 
 
test 
 
</h1> 
 
</div> 
 
</div> 
 
</div>

そして、ここではJS Fiddleです。

関連する問題