- 5313 fans
- 1036 reader
- 138 followers
CSS display: inline-block
- In category: CSS
- 23 comments
Thông thường, khi bạn muốn tạo một list đối tượng nằm ngang thì bạn cần phải sử dụng float:left/right. Tuy nhiên, các bạn có thể sử dụng display:inline-block để làm điều đó một cách đơn giản hơn. Trong bài viết này mình sẽ giới thiệu các bạn cách sữ dụng và cách fix để sử dụng cho IE7.
Float rất khó chơi
Rắc rối khi chúng ta sử dụng float khá là nhiều, có thể kể đến một số vấn đề như sau:
- Kết thúc float phải dùng clear, nếu không sẽ bị tràn nội dung.
- Phải có width chính xác của thành phần cha và con.
inline vs block
Khái niệm về Inline và Block là một khái niệm hết sức cơ bản nhưng cũng cực kỳ quan trọng trong CSS. Hiểu được từng đặc điểm của mỗi thành phần là chìa khóa quan trọng để bạn có thể vận hành CSS theo ý muốn. Trong bài này tôi sẽ nói về chức năng của từng thành phần. Tuy nhiên tôi sẽ vẫn giữ nguyên từ chuyên ngành là Block và Inline mà không dịch ra tiếng Việt là “khối” và “trong dòng” nghe cùi quá.
Khi các thành phần HTML được hiển thị trên trình duyệt nó thường có 2 cách hiển thị là theo Block và Inline. Nói hình tượng để bạn dễ hiểu thì các thành phần Block giống như một bàn cờ và các thành phần Inline là quân cờ. Các quân cờ nằm trong bàn cờ và bàn cờ thì không bao giờ nằm trong quân cờ. Đây cũng là một nguyên tắc cơ bản nhất của Inline và Block. Thành phần inline có thể nằm trong thành phần Block, nhưng Block không thể nằm trong thành phần Inline.
(Trích từ bài viết “Thành phần Block và Inline” của tác giả Demon Warlock)
inline+block
Display:inline-block được thừ hưởng 2 yếu tố của inline và block. Đo đó, về mặt căn bản thì nó sẽ giúp đối tượng hiển thị theo chiều ngang và có thể ấn định được các thuộc tính width, height, padding.
Để hiểu rõ hơn, bạn có thể xem thêm về ví dụ sau.
Code html & css
<style type="text/css">
ul#inlineBlock{
list-style: none inside;
margin: 50px 50px;
}
ul#inlineBlock li{
background-color: #CD2C24;
-webkit-box-shadow: 2px 2px 0 #00A388;
box-shadow: 2px 2px 0 #00A388;
padding: 5px 10px;
display: inline-block;
margin-right: 3px;
margin-left: 0px;
font-size: 15px;
text-transform: uppercase;
border-radius: 3px;
position: relative;
}
ul#inlineBlock li a{
color: white;
text-decoration: none;
font-weight: 600;
}
</style>
<ul id="inlineBlock">
<li><a href="#">Trang chủ</a></li>
<li><a href="#">Giới thiệu</a></li>
<li><a href="#">Sản phẩm</a></li>
<li><a href="#">Dịch vụ</a></li>
<li><a href="#">Liên hệ</a></li>
</ul>
Kết quả hiển thị
Nếu như chúng ta thả nổi height của li thì thuộc tính vertical-align có thể sử dụng được. Xem ví dụ đưới đây:
Code CSS, bạn thêm vào css selector “ul#inlineBlock li” đoạn thuộc tính sau:
vertical-align: middle;
Và sữa thêm một chút tại thẻ li này để chúng ta có được thuộc tính height thả nổi:
<li><a href="#">Giới thiệu <br>Giới thiệu <br>Giới thiệu <br>Giới thiệu</a></li>
kết quả hiển thị
Tuy inline-bock rất hữu dụng nhưng lại ko hiển thị tốt trên IE7, và sau đây là cách chữa. Code CSS, bạn thêm vào css selector “ul#inlineBlock li” đoạn thuộc tính sau:
/*fix for IE 7*/ zoom:1; *display: inline;
-
Kim Mã DPA
-
chipu
-
http://www.facebook.com/hung.duong.108 Hung Duong
-
trunghiep08dh
-
đặng hải
-
Pirates Pirates
-
Eyeless Jack
-
-
Công
-
http://scarheal.com.vn Ngoc Loi
-
http://vanphongphamsieure.vn huy2407
-
http://www.shoptretho.com.vn Trần Tuấn Anh
-
http://deezsign.forumotion.com/ Juskteez
-
BiBi
-
Hoang Anh
-
http://thietbispa.vn Ngoc Loi
-
-
http://kangaroothemes.com Duc Nguyen
-
FanDW
-
Anh Tú Phùng
-
-
Mr Tri
-
Trần Đình Chương
-
FanDW
Các series nên xem trên izwebz cho newbie
Khi vào izwebz chắc nhiều bạn cho rằng các bài viết trên izwebz đều không có hệ thống gì cả? Thực chất, các bài biết đều đi theo một series của riêng nó, ví dụ như PHP, HTML & CSS, PSD2HTML, Photoshop, illustrator,… Trong bài viết này, mình sẽ tổng hợp lại các series bài viết cần thiết cho một newbie.
-
Thứ bậc trong XHTML
Post by Demon Warlock @ 12/10/2008
-
So sánh và học từ đối thủ
Post by Demon Warlock @ 18/03/2013
-
Gửi mail với PHPMailer
Post by Võ Minh Mẫn @ 25/05/2013
-
Xác định đối tượng người đọc
Post by Demon Warlock @ 26/08/2008
-
HTML Cơ bản – Phần 1
Post by Demon Warlock @ 20/08/2009
Archives
- June 2013 (4)
- May 2013 (3)
- March 2013 (3)
- February 2013 (1)
- January 2013 (3)
- December 2012 (2)
- November 2012 (2)
- October 2012 (3)
- September 2012 (7)
- August 2012 (5)
- July 2012 (3)
- June 2012 (1)
- May 2012 (3)
- April 2012 (4)
- March 2012 (4)
- February 2012 (4)
- January 2012 (4)
- November 2011 (1)
- August 2011 (4)
- June 2011 (5)
- May 2011 (5)
- April 2011 (1)
- March 2011 (1)
- February 2011 (3)
- January 2011 (9)
- December 2010 (10)
- November 2010 (8)
- October 2010 (8)
- September 2010 (12)
- August 2010 (6)
- July 2010 (2)
- June 2010 (4)
- May 2010 (2)
- April 2010 (5)
- March 2010 (13)
- February 2010 (11)
- January 2010 (13)
- December 2009 (10)
- November 2009 (18)
- October 2009 (9)
- September 2009 (15)
- August 2009 (18)
- October 2008 (11)
- September 2008 (33)
- August 2008 (31)


