Posisi Elemen di Tengah dengan CSS
Ada dua metode untuk mengatur posisi elemen agar berada di tengah. Pertama, menggunakan metode margin auto
untuk posisi elemen di tengah secara horizontal. Ke dua, menggunakan margin negatif dan posisi absolut untuk posisi elemen berada di tengah secara vertikal maupun horizontal.
Posisi di Tengah secara Horizontal
Menerapkan nilai margin auto
pada sisi kiri dan kanan akan membuat elemen berada di tengah secara horizontal. Katakanlah bahwa margin auto
merupakan margin otomatis yang bisa menyesuaikan diri. Dengan menerapkan margin auto
, maka elemen seolah-olah akan menjauhkan dirinya sejauh-jauhnya dari sisi kiri dan kanan sehingga elemen di antaranya akan diam di tengah:
#page-wrap {
width:300px;
height:1000px;
margin:0 auto;
}
Posisi di Tengah secara Horizontal dan Vertikal
Caranya dengan menerapkan posisi absolut pada elemen. Atur nilai top
dan left
sebesar 50%
(gambar pertama), kemudian tarik kembali elemen menuju ke tengah dengan menuliskan nilai margin-top
dan margin-left
sebesar setengah dari tinggi dan lebar elemen dengan nilai negatif (gambar ke dua):
#page-wrap {
width:300px;
height:240px;
position:absolute;
left:50%;
top:50%;
margin-left:-150px; /* (300/2) */
margin-top:-120px; /* (240/2) */
}
Khusus untuk Internet Explorer lama biasanya memerlukan penambahaan deklarasi text-align:center
pada elemen induknya seperti ini:
body {
text-align:center;
}
#page-wrap {
text-align:left;
width:300px;
height:1000px;
margin:0 auto;
}
15 Comments:
ada juga yg share :))
udah pernah tak pikir2 juga mas :D
By Putra, at Sunday, March 11, 2012 at 11:50:00 AM GMT+7
thx banget postingannya !
akhirnya ketemu juga masalahnya hahah
By Ranggacun, at Thursday, April 19, 2012 at 3:48:00 PM GMT+7
thanks om, ini sangat membantu
By Unknown, at Tuesday, October 23, 2012 at 10:34:00 PM GMT+7
Kalo pake position fixed gimana bikin ke tengahnya mas?
By Anonymous, at Thursday, June 6, 2013 at 9:54:00 PM GMT+7
Sama seperti absolut.
By Taufik Nurrohman, at Friday, June 7, 2013 at 10:05:00 AM GMT+7
ketemu juga,, :DD mampir gan
By Anonymous, at Thursday, August 1, 2013 at 3:03:00 PM GMT+7
Ada alternatif selain menggunakan margin negatif dari setengah dari lebar atau tingginya mas taufik. Kita bisa gunain translate(-50%, -50%) buat elemen yang misalkan cuma diketahui tingginya aja.
#element {
position:absolute;
z-index:10; /* misalnya */
top:50%;
left:50%;
width:80%;
transform:translate(-50%, -50%);
}
By Ijal Fauzi, at Saturday, October 5, 2013 at 11:10:00 AM GMT+7
Yup. Cuma agak kurang nyaman saja sama prefiksnya. Tapi ini cocok sekali kalau diterapkan untuk mengatasi masalah elemen yang tidak memiliki lebar dan tinggi yang tetap. Misalnya gambar:
img {
display:block;
position:absolute;
top:50%;
left:50%;
-webkit-transform:translate(-50%,-50%);
-moz-transform:translate(-50%,-50%);
-ms-transform:translate(-50%,-50%);
-o-transform:translate(-50%,-50%);
transform:translate(-50%,-50%);
}
Demo: http://jsfiddle.net/tovic/3heCz
By Taufik Nurrohman, at Saturday, October 5, 2013 at 3:59:00 PM GMT+7
Betul mas, kebetulan baru-baru ini saya menerapkannya di sini : [url=http://sman7bekasi.sch.id]http://sman7bekasi.sch.id[/url] dan sudah dicoba dibeberapa gadget sudah aman tampilannya :D
By Ijal Fauzi, at Saturday, October 5, 2013 at 6:20:00 PM GMT+7
hontoni arigatou, sangat membantu
By Unknown, at Saturday, November 23, 2013 at 7:17:00 PM GMT+7
:D
By Unknown, at Thursday, January 21, 2016 at 1:11:00 PM GMT+7
makasih mas, sangat membantu. :)
By Unknown, at Wednesday, May 25, 2016 at 9:47:00 AM GMT+7
makasih gan, ngebantu banget..... :-bd
By Chirasenzai, at Sunday, December 4, 2016 at 4:53:00 PM GMT+7
thanks atas infonya sangat membantu
By lijon leo, at Sunday, July 9, 2017 at 6:12:00 PM GMT+7
nice info
By Unknown, at Tuesday, March 6, 2018 at 5:10:00 AM GMT+7
Post a Comment
<< Home