2017-05-18 31 views
0

私はメインのコンテンツdivを持っています。この親divの中央に配置されているタイトルを作成し、その下に字幕を中央揃えの端に右揃えにしたいテキスト。私はこれをうまく動作させるのに本当に困難な時間を抱いていました。このサイトや他の例で見つけることができるすべての例は、トップのテキストが中央に置かれたときに混乱するようです(反対に、 div)。中央揃えのテキストの下にdivを右揃え

(アプリのタイトルは、より大きなdivの中で中心にされている)それは次のようになります。 enter image description here

私は見つけることができる最も近いが、この質問(Right-align two divs)ですが、float: leftは、この作品を作るために非常に重要であると思われます私の場合はうまくいかないようです。他の解決策にはdisplay: tableが含まれているようですが、私が望む効果を得るためには苦労していました。

タイトルの欄の幅は可変である必要があり、古代のブラウザをサポートする必要はありません。助けてくれてありがとう!

+1

あなたのHTMLとあなたが試した任意のCSSを投稿する必要があります。 –

答えて

1

flexを使用する方法とinline-blockを使用する方法の2通りがあります。基本的には、タイトルのコンテナを作成し、そのコンテナを中央に置き、サブタイトルを右揃えにします。

* {margin:0;} 
 
h1 { 
 
    font-size: 3em; 
 
} 
 

 
.flex { 
 
    display: flex; 
 
    justify-content: center; 
 
} 
 
.flex h2 { 
 
    text-align: right; 
 
} 
 

 
.ib { 
 
    text-align: center; 
 
} 
 
.ib header { 
 
    display: inline-block; 
 
} 
 
.ib h2 { 
 
    text-align: right; 
 
}
<section class="flex"> 
 
    <header> 
 
    <h1>app title</h1> 
 
    <h2>subtitle</h2> 
 
    </header> 
 
</section> 
 

 
<section class="ib"> 
 
    <header> 
 
    <h1>app title</h1> 
 
    <h2>subtitle</h2> 
 
    </header> 
 
</section>

+0

ありがとう、これは素晴らしいです!私は確かに私が試みた多くの試みの1つでインラインブロック解決策を試していたと思っていた(そしてそれから、なぜ以前のstackoverflowの質問にリンクしなければならなかったのか)、しかし私はそれが3つの別個の要素、上のものは中心に置かれ、次のものはインラインブロックで、私は考えなかった。 – XenoScholar

関連する問題