4

div内にテキストを含む段落タグを中央に配置しようとしていますが、段落の固定幅を指定せずに、margin:0autoを使用して中央に配置できないようです。固定幅を指定したくありません。段落タグに動的テキストが入力され、テキストの量に基づいて常に異なる幅になるためです。

段落に固定幅を指定したり、テーブルを使用したりせずに、div内で段落タグを中央に配置する方法を知っている人はいますか?

4

8 に答える 8

9

スタイルシートを使用してそれを行う方法は次のとおりです。

スタイルシート:

div.center-content
{
    text-align: center;
}

div.center-content p
{
    text-align: left;
    margin-left: auto;
    margin-right: auto;
}

HTML:

<div class="center-content">
    <p>Lorem ipsum dolor sit amet</p>
</div>
于 2009-06-08T08:00:26.953 に答える
2

これが見つかりました:幅が不明なブロックレベルのコンテンツを中央に配置します

于 2009-06-08T07:59:19.250 に答える
1

ここでは、幅のないdivを中央に配置するための優れた回避策です。

テーブルレスで、どのブラウザでも動作します!

于 2010-05-14T02:06:07.097 に答える
1

「text-align」プロパティのほかに

div のようなブロック要素内の要素をセンタリングするため

のようなCSSを使用する

 マージン:自動

以下に掲載されているようなもの

垂直方向に中央揃えする場合は、テーブルを使用することをお勧めします (ほとんどの場合、これが唯一のクロスブラウザー互換ソリューションです)。

あなたが使用することができます

"text-align:center"  

 「縦揃え:中央」
于 2009-06-08T08:10:27.497 に答える
1

最良の方法は、要素をブロックレベル要素に含めて実行することだと思います:

.innerElement {margin:0 auto}

どちらも float パラメーターを持たないブロック レベルの要素であることを考えると、うまく機能するはずです!

于 2009-08-22T03:53:44.440 に答える
0

インラインCSSを使用してこれを試してください。

<p style="text-align: center;">Lorem ipsum dolor sit amet</p>

またはHTMLだけを使用する

<p align="center">Lorem ipsum dolor sit amet</p>
于 2009-06-08T07:54:42.270 に答える
0

divに幅が設定されている場合、必要なのはそれだけです

.myDiv { text-align:center; }

garry のコメントにも耳を傾けてください。どのような状況でもインライン CSS を使用しないでください。

また、中央に配置する div に他のものがある場合に備えて、これに対する別の汚い修正:

あなたはいつでもできます:

$('.youParagraph または .otherContent').wrap('');

大規模なチーム内で作業し、関心の分離が問題になる場合は、明らかにこれを実践しないでください。

これが役に立ったことを願っています。

于 2009-06-08T08:35:33.733 に答える
0

ええと、自動マージンは幅を設定する必要があります。デフォルトでは、次のようなブロックレベルの要素だからです

利用可能な幅全体に拡張されます。

IE < 8 をサポートしていない場合は、 { display: table; を設定できます。マージン: 0 自動; }

それ以外の場合、要素がブロックレベルの要素に囲まれている場合は、 p { display: inline-block; を実行できます。} p {表示:インライン。} html > /**/ body p { 表示: インラインブロック; } (最後の 2 つのルールは IE 用であり、正常なブラウザー用の IE 修正をリセットするためのものです) その後、 { text-align: center; を適用します。コンテナで。

誰かが既に述べたように、詳細についてはhttp://haslayout.net/css-tuts/Horizo​​ntal-Centeringを参照してください。

乾杯!ゾフィックス ゼネット

于 2009-08-22T03:43:18.923 に答える