jQueryを使用して画面のDIVを中央に配置する


760

<div>jQueryを使用して画面の中央にを設定するにはどうすればよいですか?


20
これはjQueryの質問よりもCSSの質問です。jQueryメソッドを使用して、ブラウザー間の配置を見つけたり、要素に適切なCSSスタイルを適用したりできますが、問題の本質は、CSSを使用して画面上のdivを中央に配置する方法です。
Chris MacDonald、

ここにもう一つのプラグインがあります。alexandremagno.net/jquery/plugins/center
イヴァイロバルダロフ

2
画面の中央にdivがある場合は、固定位置を使用している可能性があります。なぜこれをやらないのですか:stackoverflow.com/questions/2005954/…。ソリューションは純粋なCSSであり、JavaScriptを必要としません。
Ardee Aram、2011

そうです、JavaScriptメソッドはそれほどフレンドリーではありません。特にクロスブラウザ。
Simon Hayter 2013年

回答:


1070

私はjQueryに関数を追加するのが好きなので、この関数が役立ちます:

jQuery.fn.center = function () {
    this.css("position","absolute");
    this.css("top", Math.max(0, (($(window).height() - $(this).outerHeight()) / 2) + 
                                                $(window).scrollTop()) + "px");
    this.css("left", Math.max(0, (($(window).width() - $(this).outerWidth()) / 2) + 
                                                $(window).scrollLeft()) + "px");
    return this;
}

今すぐ書くことができます:

$(element).center();

デモ:フィドル(パラメーターを追加)


78
私が提案する1つの変更:this.height()とthis.width()の代わりにthis.outerHeight()とthis.outerWidth()を使用する必要があります。それ以外の場合、オブジェクトにボーダーまたはパディングがあると、オブジェクトは中心からわずかにずれてしまいます。
Trevor Burnham

82
なぜこれがjQueryの機能のネイティブな部分ではないのですか?
セスカーネギー、

14
<div>代わりに包含の中央に配置したくない場合はどうなり<body>ますか?変更windowするthis.parent()か、パラメータを追加する必要があります。
Derek款會功夫

13
「絶対」は最初の相対親から計算され、コードはウィンドウを使用して中心を計算するため、回答のコードでは「位置:固定」を使用する必要があります。
ディエゴ

2
また、ウィンドウのサイズが変更されたときにページの要素が調整されるように、サポートを追加することをお勧めします。現在、元のサイズのままです。
Webnet 2012

143

私はjqueryプラグインを入れましたここに

非常に短いバージョン

$('#myDiv').css({top:'50%',left:'50%',margin:'-'+($('#myDiv').height() / 2)+'px 0 0 -'+($('#myDiv').width() / 2)+'px'});

短縮版

(function($){
    $.fn.extend({
        center: function () {
            return this.each(function() {
                var top = ($(window).height() - $(this).outerHeight()) / 2;
                var left = ($(window).width() - $(this).outerWidth()) / 2;
                $(this).css({position:'absolute', margin:0, top: (top > 0 ? top : 0)+'px', left: (left > 0 ? left : 0)+'px'});
            });
        }
    }); 
})(jQuery);

このコードによってアクティブ化:

$('#mainDiv').center();

プラグインバージョン

(function($){
     $.fn.extend({
          center: function (options) {
               var options =  $.extend({ // Default values
                    inside:window, // element, center into window
                    transition: 0, // millisecond, transition time
                    minX:0, // pixel, minimum left element value
                    minY:0, // pixel, minimum top element value
                    withScrolling:true, // booleen, take care of the scrollbar (scrollTop)
                    vertical:true, // booleen, center vertical
                    horizontal:true // booleen, center horizontal
               }, options);
               return this.each(function() {
                    var props = {position:'absolute'};
                    if (options.vertical) {
                         var top = ($(options.inside).height() - $(this).outerHeight()) / 2;
                         if (options.withScrolling) top += $(options.inside).scrollTop() || 0;
                         top = (top > options.minY ? top : options.minY);
                         $.extend(props, {top: top+'px'});
                    }
                    if (options.horizontal) {
                          var left = ($(options.inside).width() - $(this).outerWidth()) / 2;
                          if (options.withScrolling) left += $(options.inside).scrollLeft() || 0;
                          left = (left > options.minX ? left : options.minX);
                          $.extend(props, {left: left+'px'});
                    }
                    if (options.transition > 0) $(this).animate(props, options.transition);
                    else $(this).css(props);
                    return $(this);
               });
          }
     });
})(jQuery);

このコードによってアクティブ化:

$(document).ready(function(){
    $('#mainDiv').center();
    $(window).bind('resize', function() {
        $('#mainDiv').center({transition:300});
    });
);

そうですか?

更新:

CSSトリックから

.center {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); /* Yep! */
  width: 48%;
  height: 59%;
}

垂直方向の中心では、関数は完璧に機能しました。水平方向の中央では機能しないようです。
Halsafar

CSSは、中央に配置されたdivのサイズ(少なくともパーセンテージ)がわかっていることを前提としていますが、jQueryは何でも機能します。
2014年

私の投票はCSSです。はるかに簡単で、派手なJavaスクリプトは必要ありません。絶対ではなく固定を使用すると、ユーザーがブラウザウィンドウをスクロールしてもページの中央にとどまります
user1616338

60

jQueryUI Positionユーティリティをお勧めします

$('your-selector').position({
    of: $(window)
});

これは、センタリングだけではない、はるかに多くの可能性を与えます


1
@Timwi-ウィンドウとドキュメントのどちらを中心にしていますか?
keithhackbarth 2012

1
TypeError:$(...)。positionは関数ではありません
ミケランジェロ

3
@Michelangelo:.position()を関数として使用するには、jqueryUIライブラリが必要です。チェックアウト:api.jqueryui.com/position/
jake

そのスニペットは最高です:D。ただし、要素は「可視」でなければならないことに注意してください。
Cԃաԃ

39

これが私の挑戦です。私はそれを私のライトボックスクローンに使用することになりました。このソリューションの主な利点は、ウィンドウのサイズが変更されても、要素が自動的に中央に配置されたままになるため、このような使用法に最適です。

$.fn.center = function() {
    this.css({
        'position': 'fixed',
        'left': '50%',
        'top': '50%'
    });
    this.css({
        'margin-left': -this.outerWidth() / 2 + 'px',
        'margin-top': -this.outerHeight() / 2 + 'px'
    });

    return this;
}

3
これはうまくいくと思います...レスポンシブデザインを使用しているため、私の場合はうまくいきませんでした。画面の幅が変わると、divの幅も変わります。仕事は完璧にトニーL'sの答えは何をされず、その後、これを追加する:$(window).resize(function(){$('#mydiv').center()}); (私がresizeイベントハンドラを削除閉じているときmydivはモーダルダイアログで、そう。)
ダレン・クック

1
場合によってはouterWidth()outerHeight()パディングとボーダーの幅を使用して検討する必要があります。
フィリップガーバー2013年

これ$(window).height()は、0を与えるdocタイプ5のレガシープロジェクトでは完全に機能します。しかし、位置を「絶対」に変更しました。
Mykhaylo Adamovych 2016

26

CSSを単独で使用して、次のように中央揃えできます。

実例

.center{
    position: absolute;
    height: 50px;
    width: 50px;
    background:red;
    top:calc(50% - 50px/2); /* height divided by 2*/
    left:calc(50% - 50px/2); /* width divided by 2*/
}
<div class="center"></div>

calc() CSSで基本的な計算を行うことができます。

calc()ブラウザサポートテーブルのMDNドキュメント


IE8では、jqueryセンター戦略を使用するブラウザーをサポートする必要がある場合、calc()はサポートされていないことに注意してください。
mbokil 2013

14

@TonyLからのすばらしい答えを詳しく説明します。値をラップするためにMath.abs()を追加しています。また、jQueryがWordPressなどの「競合なし」モードになっている可能性があることも考慮に入れています。

以下で行ったように、上部と左側の値をMath.abs()でラップすることをお勧めします。ウィンドウが小さすぎて、モーダルダイアログの上部にクローズボックスがある場合は、クローズボックスが表示されないという問題を回避できます。トニーの関数は、潜在的に負の値を持っていたでしょう。負の値になる方法の良い例は、中央に大きなダイアログがあり、エンドユーザーがいくつかのツールバーをインストールしたり、デフォルトのフォントを増やしたりした場合です。このような場合、モーダルダイアログのクローズボックス(上部)は表示されず、クリックできない場合があります。

もう1つのことは、余分なDOMトラバーサルを減らすために$(window)オブジェクトをキャッシュしてこれを少し高速化し、クラスターCSSを使用することです。

jQuery.fn.center = function ($) {
  var w = $(window);
  this.css({
    'position':'absolute',
    'top':Math.abs(((w.height() - this.outerHeight()) / 2) + w.scrollTop()),
    'left':Math.abs(((w.width() - this.outerWidth()) / 2) + w.scrollLeft())
  });
  return this;
}

使用するには、次のようにします。

jQuery(document).ready(function($){
  $('#myelem').center();
});

私はあなたの改善が好きです。ただし、探している正確な動作に応じて、まだ1つの問題が見つかりました。absは、ユーザーが上と左に完全にスクロールされた場合にのみ機能します。そうでない場合、ユーザーはブラウザーウィンドウをスクロールしてタイトルバーに移動する必要があります。その問題を解決するために、次のような単純なifステートメントを使用することにしましたif (top < w.scrollTop()) top = w.scrollTop();。繰り返しますが、これにより、望ましい場合と望ましくない場合があるさまざまな動作が提供されます。
Alex Jorgenson、2012年

11

jQuery UI position関数を使用します。

動作デモをご覧ください

<div id="test" style="position:absolute;background-color:blue;color:white">
    test div to center in window
</div>

中央に「test」というIDのdivがある場合、次のスクリプトは、ウィンドウの中央のdivをドキュメントの中央に配置して準備ができています。(位置オプションの「my」と「at」のデフォルト値は「center」です)

<script type="text/javascript">
$(function(){
  $("#test").position({
     of: $(window)
  });
};
</script>

8

1つの問題を修正したいと思います。

this.css("top", ( $(window).height() - this.height() ) / 2+$(window).scrollTop() + "px");

上記のコードはthis.height、ユーザーが画面のサイズを変更し、コンテンツが動的であると仮定すると、機能しません。scrollTop() = 0

window.heightある600
this.height650

600 - 650 = -50  

-50 / 2 = -25

これで、ボックスは-25画面外の中央に配置されます。


6

これはテストされていませんが、このようなものが動作するはずです。

var myElement = $('#myElement');
myElement.css({
    position: 'absolute',
    left: '50%',
    'margin-left': 0 - (myElement.width() / 2)
});

6

要素を常にページの中央に配置したい場合は、絶対位置を指定するのが最善とは思いません。おそらく固定要素が必要です。固定配置を使用する別のjqueryセンタリングプラグインを見つけました。それは固定中心と呼ばれます


4

この関数の遷移コンポーネントは、Chromeでは私にとって本当にうまく機能しませんでした(他の場所ではテストしていません)。私はウィンドウのサイズを一気にリサイズし、私の要素は追いつくようにゆっくりと周りをゆっくりと回っています。

したがって、次の関数はコメントアウトします。さらに、水平方向ではなく垂直方向に中央揃えにしたい場合は、オプションのxおよびyブール値を渡すためのパラメーターを追加しました。次に例を示します。

// Center an element on the screen
(function($){
  $.fn.extend({
    center: function (x,y) {
      // var options =  $.extend({transition:300, minX:0, minY:0}, options);
      return this.each(function() {
                if (x == undefined) {
                    x = true;
                }
                if (y == undefined) {
                    y = true;
                }
                var $this = $(this);
                var $window = $(window);
                $this.css({
                    position: "absolute",
                });
                if (x) {
                    var left = ($window.width() - $this.outerWidth())/2+$window.scrollLeft();
                    $this.css('left',left)
                }
                if (!y == false) {
            var top = ($window.height() - $this.outerHeight())/2+$window.scrollTop();   
                    $this.css('top',top);
                }
        // $(this).animate({
        //   top: (top > options.minY ? top : options.minY)+'px',
        //   left: (left > options.minX ? left : options.minX)+'px'
        // }, options.transition);
        return $(this);
      });
    }
  });
})(jQuery);

4

ブラウザーのビューポート(ウィンドウ)に対して要素を中央にposition: absolute配置するには、を使用しないでください。正しい位置の値はfixed(絶対的な意味:「要素は最初に配置された(静的ではない)祖先要素に対して相対的に配置されます」)です。

提案されたセンタープラグインのこの代替バージョンは、「px」ではなく「%」を使用するため、ウィンドウのサイズを変更すると、コンテンツは中央に配置されたままになります。

$.fn.center = function () {
    var heightRatio = ($(window).height() != 0) 
            ? this.outerHeight() / $(window).height() : 1;
    var widthRatio = ($(window).width() != 0) 
            ? this.outerWidth() / $(window).width() : 1;

    this.css({
        position: 'fixed',
        margin: 0,
        top: (50*(1-heightRatio)) + "%",
        left: (50*(1-widthRatio))  + "%"
    });

    return this;
}

margin: 0幅/高さからコンテンツのマージンを除外するように配置する必要があります(位置固定を使用しているため、マージンを設定しても意味がありません)。jQuery docによれば、.outerWidth(true)はマージンを含める必要がありますが、Chromeで試したときに期待どおりに機能しませんでした。

50*(1-ratio)から来ています:

ウィンドウの幅: W = 100%

要素の幅(%): w = 100 * elementWidthInPixels/windowWidthInPixels

中央左を計算する:

 left = W/2 - w/2 = 50 - 50 * elementWidthInPixels/windowWidthInPixels =
 = 50 * (1-elementWidthInPixels/windowWidthInPixels)

4

これは素晴らしい。コールバック関数を追加しました

center: function (options, callback) {


if (options.transition > 0) {
   $(this).animate(props, options.transition, callback);
} else { 
    $(this).css(props);
   if (typeof callback == 'function') { // make sure the callback is a function
       callback.call(this); // brings the scope to the callback
   }
}

4

編集:

質問が私に何かを教えてくれたなら、それはこれです:すでに機能しているものを変更しないでください:)

私はこれがhttp://www.jakpsatweb.cz/css/css-vertical-center-solution.htmlでどのように処理されたかの(ほぼ)逐語的なコピーを提供しています-IEにはかなりハッキングされていますが、純粋なCSSの方法を提供しています質問に答える:

.container {display:table; height:100%; position:absolute; overflow:hidden; width:100%;}
.helper    {#position:absolute; #top:50%;
            display:table-cell; vertical-align:middle;}
.content   {#position:relative; #top:-50%;
            margin:0 auto; width:200px; border:1px solid orange;}

フィドル:http : //jsfiddle.net/S9upd/4/

私はこれをbrowsershotsで実行しましたが、問題ないようです。他に何もない場合は、CSS仕様で規定されているマージンの割合の処理が日の目を見るように、以下を元のままにします。

元の:

パーティーに遅れそうだ!

これはCSSの質問であることを示唆するコメントがいくつかあります-懸念の分離とすべて。CSSは、実際にはCSSが実際に足を踏み入れたものであると言って、これの前置きを述べておきます。つまり、これを行うのはどれほど簡単でしょうか。

.container {
    position:absolute;
    left: 50%;
    top: 50%;
    overflow:visible;
}
.content {
    position:relative;
    margin:-50% 50% 50% -50%;
}

正しい?コンテナの左上隅は画面の中央にあり、マージンが負の場合、コンテンツはページの絶対的な中央に魔法のように再表示されます。http://jsfiddle.net/rJPPc/

違う!横向きでも大丈夫ですが、縦向きです…なるほど。どうやらCSSでは、上部マージンを%で設定すると、値は常に包含ブロックのに対するパーセンテージとして計算されます。りんごやみかんみたい!私やMozillaドコを信用していない場合は、コンテンツの幅を調整して上記のフィドルを試してみてください。


CSSが私のパンとバターになった今、私はあきらめようとしていませんでした。同時に、私は物事が簡単であることを好むので、私はチェコのCSSグルの発見を借りて、それを実用的なフィドルにしました。簡単に言えば、vertical-alignが中央に設定されているテーブルを作成します。

<table class="super-centered"><tr><td>
    <div class="content">
        <p>I am centered like a boss!</p>
    </div>
</td></tr></table>

そして、コンテンツの位置は古き良きマージン0 autoで微調整されます。

.super-centered {position:absolute; width:100%;height:100%;vertical-align:middle;}
.content {margin:0 auto;width:200px;}​

約束どおりのフィドル:http : //jsfiddle.net/teDQ2/


1
問題は、それが中央に配置されていないことです。
Konrad Borowski、2012年

@GlitchMr:明日、ワークボックスを再確認したいのですが、2番目のフィドルは、Chrome / Safari Macで問題なく動作しました
2012年

そう、Chrome、Firefox、Internet Explorer 8以降(IE7は動作しません)をチェックインしましたが、動作します。しかし、それはOperaでは機能しません...シンプルなCSSであり、他のブラウザーで機能することを考えると、それは非常に奇妙です。
Konrad Borowski

@GlitchMr:古い質問に目を光らせてくれてありがとう。上記のフィドルリンクを更新して「正しい」答えを表示しました-うまくいくかどうかお知らせください(または忘却に反対票を投じます。チャンスがありました!:)
ov

えっと、正しい答えが表示されない限り、私がやるのは賛成投票ではありません(現在はOperaではまだ機能しませんが、ブラウザーのバグだと思います)...ちょっと待ってください...ウィンドウのサイズを変更して、 JSFiddle自体でウィンドウのサイズを変更する場合。したがって、動作します:)。申し訳ありません。ただし、それでもIE7では機能しないことを警告する必要があります。+1。ああ、それはIE6で動作すると思います...
Konrad Borowski

3

私がここに持っているのは、センタリングしようとしている要素が「固定」または「絶対」配置であるだけでなく、センタリングしている要素がその親よりも小さいことを保証する「センタリング」メソッドです要素が親である場合、要素の親が要素自体よりも小さい場合、DOMを次の親まで略奪し、それを基準として中央に配置します。

$.fn.center = function () {
        /// <summary>Centers a Fixed or Absolute positioned element relative to its parent</summary>

        var element = $(this),
            elementPos = element.css('position'),
            elementParent = $(element.parent()),
            elementWidth = element.outerWidth(),
            parentWidth = elementParent.width();

        if (parentWidth <= elementWidth) {
            elementParent = $(elementParent.parent());
            parentWidth = elementParent.width();
        }

        if (elementPos === "absolute" || elementPos === "fixed") {
            element.css('right', (parentWidth / 2) - elementWidth / 2 + 'px');
        }
    };

2

私はこれを使います:

$(function() {
   $('#divId').css({
    'left' : '50%',
    'top' : '50%',
    'position' : 'absolute',
    'margin-left' : -$('#divId').outerWidth()/2,
    'margin-top' : -$('#divId').outerHeight()/2
  });
});

2

これを使用してください:

$(window).resize(function(){
    $('.className').css({
        position:'absolute',
        left: ($(window).width() - $('.className').outerWidth())/2,
        top: ($(window).height() - $('.className').outerHeight())/2
    });
});

// To initially run the function:
$(window).resize();

0

文書がスクロールされるたびに要素の位置を調整しているため、この移行はうまくいきません。必要なのは、固定配置を使用することです。上記の固定センタープラグインを試してみましたが、問題はうまく解決しているようです。固定位置では、要素を1回中央に配置でき、スクロールするたびにCSSプロパティがその位置を維持します。


0

これが私のバージョンです。これらの例を見た後で、変更する場合があります。

$.fn.pixels = function(property){
    return parseInt(this.css(property));
};

$.fn.center = function(){
    var w = $($w);
    return this.each(function(){
        $(this).css("position","absolute");
        $(this).css("top",((w.height() - $(this).height()) / 2) - (($(this).pixels('padding-top') + $(this).pixels('padding-bottom')) / 2) + w.scrollTop() + "px");
        $(this).css("left",((w.width() - $(this).width()) / 2) - (($(this).pixels('padding-left') + $(this).pixels('padding-right')) / 2) + w.scrollLeft() + "px");
    });
};

0

これにはjqueryは必要ありません

これをDiv要素の中央に配置するために使用しました。CSSスタイル、

.black_overlay{
    display: none;
    position: absolute;
    top: 0%;
    left: 0%;
    width: 100%;
    height: 100%;
    background-color: black;
    z-index:1001;
    -moz-opacity: 0.8;
    opacity:.80;
    filter: alpha(opacity=80);
}

.white_content {
    display: none;
    position: absolute;
    top: 25%;
    left: 25%;
    width: 50%;
    height: 50%;
    padding: 16px;
    border: 16px solid orange;
    background-color: white;
    z-index:1002;
    overflow: auto;
}

要素を開く

$(document).ready(function(){
    $(".open").click(function(e){
      $(".black_overlay").fadeIn(200);
    });

});

あなたの答えにhtmlを含めることを忘れましたか?
2016

0

TONY L'S ANSWERへの私の更新 これは私が今信仰的に使用している彼の回答の改造版です。さまざまな種類の状況など、さまざまな状況で機能が少し追加されるので、私はそれを共有すると思いましたposition

center.js:

// We add a pos parameter so we can specify which position type we want

// Center it both horizontally and vertically (dead center)
jQuery.fn.center = function (pos) {
    this.css("position", pos);
    this.css("top", ($(window).height() / 2) - (this.outerHeight() / 2));
    this.css("left", ($(window).width() / 2) - (this.outerWidth() / 2));
    return this;
}

// Center it horizontally only
jQuery.fn.centerHor = function (pos) {
    this.css("position", pos);
    this.css("left", ($(window).width() / 2) - (this.outerWidth() / 2));
    return this;
}

// Center it vertically only
jQuery.fn.centerVer = function (pos) {
    this.css("position", pos);
    this.css("top", ($(window).height() / 2) - (this.outerHeight() / 2));
    return this;
}

私の中<head>

<script src="scripts/center.js"></script>

使用例:

$("#example1").centerHor("absolute")
$("#example2").centerHor("fixed")

$("#example3").centerVer("absolute")
$("#example4").centerVer("fixed")

$("#example5").center("absolute")
$("#example6").center("fixed")

あらゆるポジショニングタイプで機能し、サイト全体で簡単に使用でき、作成した他のサイトに簡単に移植できます。何かを適切にセンタリングするための煩わしい回避策はもうありません。

これが誰かに役立つことを願っています!楽しい。


0

これを行う方法はたくさんあります。私のオブジェクトはBODYタグのすぐ内側にdisplay:noneで表示にされているため、配置はBODYに対して相対的です。$( "#object_id")。show()を使用した後、$( " #object_id")。center()を呼び出します

私はposition:absoluteを使用しています特に小さなモバイルデバイスでは、モーダルウィンドウがデバイスウィンドウよりも大きくなる可能性があるため、ます。この場合、位置が固定されていると、モーダルコンテンツの一部にアクセスできなくなる可能性があります。

ここに他の人の答えと私の特定のニーズに基づく私の味があります:

$.fn.center = function () {
        this.css("position","absolute");

        //use % so that modal window will adjust with browser resizing
        this.css("top","50%");
        this.css("left","50%");

        //use negative margin to center
        this.css("margin-left",(-1*this.outerWidth()/2)+($(window).scrollLeft())+"px");
        this.css("margin-top",(-1*this.outerHeight()/2)+($(window).scrollTop())+"px");

        //catch cases where object would be offscreen
        if(this.offset().top<0)this.css({"top":"5px","margin-top":"0"});
        if(this.offset().left<0)this.css({"left":"5px","margin-left":"0"});

        return this;
    };

0

CSS translateプロパティを使用できます。

position: absolute;
transform: translate(-50%, -50%);

詳細については、この投稿をお読みください。


1
そのようなことのために、あなたはあなたを設定したいleft: 50%top: 50%あなたはオーバー正しくその中心点をシフトするために変換する変換を使用することができます。ただし、この方法では、Chromeなどのブラウザが後でテキストを歪めたりぼかしたりするため、通常は望ましくありません。ウィンドウの幅/高さをつかみ、トランスフォームをいじるのではなく、それに基づいて左/上を配置することをお勧めします。ゆがみを防ぎ、テストしたすべてのブラウザーで機能します。
Fata1Err0r 2015

0

通常、私はCSSでのみこれを行います...しかし、jQueryでこれを行う方法をあなたに尋ねたので...

次のコードは、divをコンテナー内で水平方向と垂直方向の両方に中央揃えします。

$("#target").addClass("centered-content")
            .wrap("<div class='center-outer-container'></div>")
            .wrap("<div class='center-inner-container'></div>");
body {
    margin : 0;
    background: #ccc;
}

.center-outer-container {
    position : absolute;
    display: table;
    width: 100%;
    height: 100%;
}

.center-inner-container {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
}

.centered-content {
    display: inline-block;
    text-align: left;
    background: #fff;
    padding : 20px;
    border : 1px solid #000;
}
<script type="text/javascript" src="https://code.jquery.com/jquery-1.12.1.min.js"></script>
<div id="target">Center this!</div>

このフィドルも参照してください)


0

CSSソリューション 2行のみ

内側のdivを水平および垂直に集中化します。

#outer{
  display: flex;
}
#inner{
margin: auto;

}

水平位置合わせのみ、変更

margin: 0 auto;

垂直の場合、変更

margin: auto 0;

0

次のように言うだけです:$( "#divID")。html($( '')。html($( "#divID")。html()));


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.