iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 18
1
自我挑戰組

學習 HTML / CSS 遇到的問題 系列 第 18

很常用到的 margin / padding

  • 分享至 

  • xImage
  •  

margin

margin 屬性是 margin-topmargin-rightmargin-bottommargin-left 的總和,可以一次包含四個值,若 margin 屬性填入四個值,四個值依序會是從上方開始順時鐘方向,右、下、左,也可以填入三個值;若是三個值依序會是上、左右值、下;若是兩個值,依序代表上下值、左右值
值可以是長度單位 ( px / rem / em …)、百分比(%)、auto ,或是負值,若使用負值會讓元素和其他內容更靠近
margin: 0 auto 是常使用來讓區塊元素水平置中的語法,需搭配固定寬度

margin 需注意若有一個以上的區塊元素排列,且都有設定上下 margin,會有 margin 重疊的情形,若上下都設定 margin,重疊時會留下較大值的 margin(使用 float 或絕對定位排列不會產生重疊)
可以參考 理解邊界重疊的原因 - CSS | MDN

父元素與第一個或最後一個子元素也會有邊界重疊的情形,常見的是父元素和第一個子元素的 margin-top 貼在一起,這時候 margin-top 會是在父元素外,而不是在父元素中

若是有這樣的情形可以在父元素設定 border、padding,或是將內容設定成行內元素就可以解決此情況

padding

padding 屬性和 margin 的語法相同,是 padding-bottompadding-leftpadding-rightpadding-top 的總和,也可以填入 1 - 4 個值,四個值分別代表上、又、下、左;三個值為上、左右、下,兩個值為上下值、左右值,一個值則是四邊都相同
需注意值可以是長度單位 ( px / rem / em …)、百分比(%),但 auto 在 padding 是無效的,也不能設定負值的 padding

參考資料:
padding - CSS | MDN
margin - CSS | MDN
理解邊界重疊的原因
CSS 失控的 Margin top | 卡斯伯 Blog - 前端,沒有極限


上一篇
簡略認識 CSS 前綴詞
下一篇
關於 CSS 中,值的百分比 %
系列文
學習 HTML / CSS 遇到的問題 30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言