display:inline-block之用法
生活随笔
收集整理的這篇文章主要介紹了
display:inline-block之用法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
HTML的元素有多種display屬性,比較常見的有display:none; display:block; display:inline和display:inline-block;等。詳細可參閱
W3Schools文檔。
有些HTML元素自然地帶有display:block;樣式屬性,比如
????<div>
????<h1>...<h6>
????<p>
????<ul>,<ol>,<dl>
????<li>,<dt>,<dd>
????<table>
????<pre>
等元素,其顯示為block樣式,會將一行中其可用的空間給跨越占據,容不下另一個元素與其同行。
有些HTML元素則是自然帶有display:inline;樣式屬性,這也是元素默認的樣式,比如
????<span>
????<a>
????<strong>
????<em>
????<img>
????<br>
等元素,其不會打斷文檔排布流,會在一行中一個挨一個地排列。
當想要做一個水平的列表時,一種方式是使用float來實現,但得容忍其缺點;另一種方式是使用display:inline-block;來實現。現在轉入正題了。
用float方式會帶來的麻煩:
使用float方式需要注意的是,要有一個元素來包裹float元素,同時避免接下來的元素緊緊地靠近它。另外一個麻煩是,當有一個多行水平列表,但是列表里的內容有不同的高度時,就會排的非常痛苦。
用display:inline-block;方式:
display:inline-block;方式樣式化列表時,既可使得列表元素能按行挨個排列,同時元素還能保持其塊屬性,比如高和寬、上下邊距等。但是對有不同高度內容的元素時,通常要設置對齊方式如vertical-align: top;來使元素頂部對齊。
用display:inline-block;的瀏覽器兼容:
CSS中使用display:inline-block;來樣式化,在Firefox, Safari, Google Chrome 和 IE 8及以上是有效的。但是在早期的IE,比如IE 7,就要做一些改變才能適應。
????/* For IE 7 */
????zoom: 1;
????*display: inline;
通常,做瀏覽器兼容適應的CSS樣式化,最好是分開獨立的樣式文件,然后通過條件注釋將其引入。
用display:inline-block;的空白符引起的問題:
因為元素之間是行內inline修飾排列的,因此HTML中的空格符也會影響到這個修飾。也就是說,當我們把元素的大小和順序排列好后,如果在<li>元素之間有空格符,這個空格符將會產生4px的邊距。
綜述,用display:inline-block;來實現水平列表比用float方式更容易控制,需要注意的是前者會由空格符帶來邊距影響。
此文不截圖,有興趣自己試。
有些HTML元素自然地帶有display:block;樣式屬性,比如
????<div>
????<h1>...<h6>
????<p>
????<ul>,<ol>,<dl>
????<li>,<dt>,<dd>
????<table>
????<pre>
等元素,其顯示為block樣式,會將一行中其可用的空間給跨越占據,容不下另一個元素與其同行。
有些HTML元素則是自然帶有display:inline;樣式屬性,這也是元素默認的樣式,比如
????<span>
????<a>
????<strong>
????<em>
????<img>
????<br>
等元素,其不會打斷文檔排布流,會在一行中一個挨一個地排列。
當想要做一個水平的列表時,一種方式是使用float來實現,但得容忍其缺點;另一種方式是使用display:inline-block;來實現。現在轉入正題了。
用float方式會帶來的麻煩:
使用float方式需要注意的是,要有一個元素來包裹float元素,同時避免接下來的元素緊緊地靠近它。另外一個麻煩是,當有一個多行水平列表,但是列表里的內容有不同的高度時,就會排的非常痛苦。
用display:inline-block;方式:
display:inline-block;方式樣式化列表時,既可使得列表元素能按行挨個排列,同時元素還能保持其塊屬性,比如高和寬、上下邊距等。但是對有不同高度內容的元素時,通常要設置對齊方式如vertical-align: top;來使元素頂部對齊。
用display:inline-block;的瀏覽器兼容:
CSS中使用display:inline-block;來樣式化,在Firefox, Safari, Google Chrome 和 IE 8及以上是有效的。但是在早期的IE,比如IE 7,就要做一些改變才能適應。
????/* For IE 7 */
????zoom: 1;
????*display: inline;
通常,做瀏覽器兼容適應的CSS樣式化,最好是分開獨立的樣式文件,然后通過條件注釋將其引入。
用display:inline-block;的空白符引起的問題:
因為元素之間是行內inline修飾排列的,因此HTML中的空格符也會影響到這個修飾。也就是說,當我們把元素的大小和順序排列好后,如果在<li>元素之間有空格符,這個空格符將會產生4px的邊距。
綜述,用display:inline-block;來實現水平列表比用float方式更容易控制,需要注意的是前者會由空格符帶來邊距影響。
此文不截圖,有興趣自己試。
總結
以上是生活随笔為你收集整理的display:inline-block之用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 京东中信白条联名卡额度一般多少
- 下一篇: mongodb 库数量限制_MongoD