我要成為切版魔法師 #1 - 不管啦,就是要正方形!

更新於 2023/07/19閱讀時間約 2 分鐘

網頁中經常會出現正方形的設計,在切版時如果直接設定固定寬高就是破版的節奏,但單用百分比設定長寬,RWD 時還是會變得不夠正,這邊提供兩個方法:

第一個方法:直接設定固定寬高(被打

只適用在網頁很小的元素上,不受 RWD 影響、也不會導致破版,那還是可以省事點,直接設定固定寬高。

第二個方法:使用 padding 特性來撐出等比例的正方形

當 padding 設定為百分比時,所依據的單位是以父容器寬度來計算(不是本身元素),假如今天父容器寬度為 100px,子元素 padding 設定 10%,就會得出 10px

按照以上特性,就可以知道子元素的 padding 和 width 百分比數值相同時,就會呈現正方形(因為它們的參考基準都是父容器的寬度),要注意 height 要設定 0,避免內容撐出多餘的高度,導致整體並不是正方形。

.box{
width: 30%;
padding-bottom: 30%;
height: 0;
}

圖片使用 img 標籤無法放入到容器中怎麼辦?

純文字和使用 background-image 語法加入圖片都可以透過上面的這個方式直接放置在容器中,但使用 img 標籤就會完全消失,主要是因為 height 已經被強制設定為 0,解決方法可以透過以下步驟:

  1. img 標籤使用 position: absolute ,放置圖片的容器設定 position: relative,透過定位方式將圖片放入到容器中
  2. 記得圖片也要設定寬度與高度 100%,否則不會以外層容器為基準縮放
  3. 搭配 object-fit: cover; 避免圖片變形
.box{
width: 33%;
padding-bottom: 33%;
height: 0;
background: #000;
position: relative;
}

img{
width: 100%;
height: 100%;
position: absolute;
object-fit: cover;
}


希望看完這篇的你,都能順利在網頁上做出自由縮放的正方形!

若有錯誤歡迎指正,感謝看完這篇的大家。

avatar-img
7會員
30內容數
正在一點一滴學習程式,相信知識量總有一天會匯聚成大海,目前專門研究前端中。
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
傑米的沙龍 的其他內容
所有的 CSS 設計模式都是為了維持可讀性、好維護、易擴充這幾個目標,今天就來談談 BEM 設計模式,並搭配 Sass 中的 SCSS 來介紹,並探討在各種情境下該如何使用 BEM。
除了常見的 Material Icons 和 Font Awesome 提供免費圖示資源,現在又有 「icofont」可以引入 icon 到網頁中了!目前看網路上對它的討論較少,這篇主要會來談談它引入到網頁的方式。
以往寫網頁經常使用到 Google Fonts 裡的 Material Icons 服務,但大多都是直接引入預設設定,最多就是在官方提供的簡易編輯器做一些 icon 樣式填滿、線框的調整而已,仔細看了官方文件之後,才發現原來還有一些設定可以做調整,使用上更加彈性,因此寫了這篇文章記錄下來。
JavaScript 的型別可以分為兩類,分別是原始型別與物件型別,這邊主要談的是 ES6 的寫法。值得注意的是,JavaScript 變數本身不帶有型別,值才有。
npm 是一個套件管理工具,開發中經常需要使用第三方套件,npm 是可以用來管理很多套件的工具,這邊指的套件可能是 Library, 框架, 工具等,例如 Bootstrap, jQuery, Vue.js, babel 都可以統一由它管理。
所有的 CSS 設計模式都是為了維持可讀性、好維護、易擴充這幾個目標,今天就來談談 BEM 設計模式,並搭配 Sass 中的 SCSS 來介紹,並探討在各種情境下該如何使用 BEM。
除了常見的 Material Icons 和 Font Awesome 提供免費圖示資源,現在又有 「icofont」可以引入 icon 到網頁中了!目前看網路上對它的討論較少,這篇主要會來談談它引入到網頁的方式。
以往寫網頁經常使用到 Google Fonts 裡的 Material Icons 服務,但大多都是直接引入預設設定,最多就是在官方提供的簡易編輯器做一些 icon 樣式填滿、線框的調整而已,仔細看了官方文件之後,才發現原來還有一些設定可以做調整,使用上更加彈性,因此寫了這篇文章記錄下來。
JavaScript 的型別可以分為兩類,分別是原始型別與物件型別,這邊主要談的是 ES6 的寫法。值得注意的是,JavaScript 變數本身不帶有型別,值才有。
npm 是一個套件管理工具,開發中經常需要使用第三方套件,npm 是可以用來管理很多套件的工具,這邊指的套件可能是 Library, 框架, 工具等,例如 Bootstrap, jQuery, Vue.js, babel 都可以統一由它管理。
你可能也想看
Google News 追蹤
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
過去,我會給自己很明確的目標。希望自己成為那一種人。 求學階段,我想上第一志願。但三次聯考的結果,我進了淡江。而且不是我喜歡的建築系! 我依然不願意放棄,最後好不容易考上了交大資工所。我心目中的第一志願! 選擇工作時,我想做IC設計。理由很單純,從第一年考上華梵資工時,我很明確的知道這不是我想做的事
廢話不多說,三個人把紙條翻開一看,幾個大字映入眼簾 ──── 「我要成為海 ‧ 賊 ‧ 王!」 我們狂笑,還拿給別人看。 難怪會沉下來,太重了,真的。 就在一夥人嘲笑別人願望的同時,我沒有想到,將來自己祈禱的心願會更加可笑,所行走的路,會更加崎嶇難行。 對了,我的畢冊還安分地躺在教室抽屜裡,反正該簽
Thumbnail
你是不是常常感覺時間不夠呢?過去曾經我曾經準備過考大學、轉系轉學考(大學內平轉)、法律研究所、司法官國考。我也帶過準備考研究所以及考律師司法官考試的學弟妹,進行讀書會。在檢察官的工作上,也需要面臨和警察、行政機關、同事約時間討論事情。時間管理是一生都再不斷優化和學習的事情。以下是3個可以嘗試的步驟:
Thumbnail
『相信你的使命,你的存在就有意義,眾人相信你的使命,你就是眾人存在的意義』 『使命』、『願景』、『戰略』、『目標』到底什麼關係?公司年年在推演,最後成為似是而非的因果,反正每年都寫「業績成長20%」目標一定會給過,不管BSC還是OKR,都先看過『海賊王』再開始......
Thumbnail
2021年台股攻萬八,投資小白也想進來試試手氣!股票不是六合彩,如果你期待那些朋友、老師、頻道或是社群可以報名牌給你,讓你無腦賺錢;我想不是你笨、就是對方很壞。
Thumbnail
近期因為疫情沒辦法像往常一樣到處遊玩,強迫自己找不用出門的事情打發時間,更重要的是面對自己的財務狀況。 一直以來都想接觸投資也註冊了證劵戶,但這證劵戶閒置了近半年,後來在朋友的陪伴下決定學習踏入這個深淵,初期聽了朋友的小道消息所以購買一些股票但是事實是所謂的交學費。
Thumbnail
前陣子大家都是買台積電,把它稱為台灣之光,現在則變成買長榮,人人變成航海王了,如果有投資的航海王或尚未成為航海王的觀望者,一起來了解我們對航海王的看法吧!  航運產業 一般可分為海運、空運和內陸運輸三種,貨櫃航運屬於海運業。海運業可以再分為貨櫃航運以及散裝航運兩類。 目前台灣貨櫃航運的代表為長榮26
Thumbnail
一個人努力久了,雖然習慣了一個人的生活,但你終究還是嚮往著兩個人的幸福。可是當你單身很久了以後,連怎麼和另外一個人在一起,你可能都要重新學習。這就好像是做運動,一旦太久沒做,一切就會生疏了,你得要重新習慣身體的節奏。你準備要跟單身說再見了,但還要學著怎麼跟愛情好好相處。
一句話:Be comfortable with your own skin. 這是英語的一種說法,也就是對自己的狀態感到很自在。 對!40歲之後的我,想要優雅地、自在地活著,成為the best version of myself. 但是要怎麼樣才能夠對自己的狀態感到自在呢?
Thumbnail
*合作聲明與警語: 本文係由國泰世華銀行邀稿。 證券服務係由國泰世華銀行辦理共同行銷證券經紀開戶業務,定期定額(股)服務由國泰綜合證券提供。   剛出社會的時候,很常在各種 Podcast 或 YouTube 甚至是在朋友間聊天,都會聽到各種市場動態、理財話題,像是:聯準會降息或是近期哪些科
Thumbnail
過去,我會給自己很明確的目標。希望自己成為那一種人。 求學階段,我想上第一志願。但三次聯考的結果,我進了淡江。而且不是我喜歡的建築系! 我依然不願意放棄,最後好不容易考上了交大資工所。我心目中的第一志願! 選擇工作時,我想做IC設計。理由很單純,從第一年考上華梵資工時,我很明確的知道這不是我想做的事
廢話不多說,三個人把紙條翻開一看,幾個大字映入眼簾 ──── 「我要成為海 ‧ 賊 ‧ 王!」 我們狂笑,還拿給別人看。 難怪會沉下來,太重了,真的。 就在一夥人嘲笑別人願望的同時,我沒有想到,將來自己祈禱的心願會更加可笑,所行走的路,會更加崎嶇難行。 對了,我的畢冊還安分地躺在教室抽屜裡,反正該簽
Thumbnail
你是不是常常感覺時間不夠呢?過去曾經我曾經準備過考大學、轉系轉學考(大學內平轉)、法律研究所、司法官國考。我也帶過準備考研究所以及考律師司法官考試的學弟妹,進行讀書會。在檢察官的工作上,也需要面臨和警察、行政機關、同事約時間討論事情。時間管理是一生都再不斷優化和學習的事情。以下是3個可以嘗試的步驟:
Thumbnail
『相信你的使命,你的存在就有意義,眾人相信你的使命,你就是眾人存在的意義』 『使命』、『願景』、『戰略』、『目標』到底什麼關係?公司年年在推演,最後成為似是而非的因果,反正每年都寫「業績成長20%」目標一定會給過,不管BSC還是OKR,都先看過『海賊王』再開始......
Thumbnail
2021年台股攻萬八,投資小白也想進來試試手氣!股票不是六合彩,如果你期待那些朋友、老師、頻道或是社群可以報名牌給你,讓你無腦賺錢;我想不是你笨、就是對方很壞。
Thumbnail
近期因為疫情沒辦法像往常一樣到處遊玩,強迫自己找不用出門的事情打發時間,更重要的是面對自己的財務狀況。 一直以來都想接觸投資也註冊了證劵戶,但這證劵戶閒置了近半年,後來在朋友的陪伴下決定學習踏入這個深淵,初期聽了朋友的小道消息所以購買一些股票但是事實是所謂的交學費。
Thumbnail
前陣子大家都是買台積電,把它稱為台灣之光,現在則變成買長榮,人人變成航海王了,如果有投資的航海王或尚未成為航海王的觀望者,一起來了解我們對航海王的看法吧!  航運產業 一般可分為海運、空運和內陸運輸三種,貨櫃航運屬於海運業。海運業可以再分為貨櫃航運以及散裝航運兩類。 目前台灣貨櫃航運的代表為長榮26
Thumbnail
一個人努力久了,雖然習慣了一個人的生活,但你終究還是嚮往著兩個人的幸福。可是當你單身很久了以後,連怎麼和另外一個人在一起,你可能都要重新學習。這就好像是做運動,一旦太久沒做,一切就會生疏了,你得要重新習慣身體的節奏。你準備要跟單身說再見了,但還要學著怎麼跟愛情好好相處。
一句話:Be comfortable with your own skin. 這是英語的一種說法,也就是對自己的狀態感到很自在。 對!40歲之後的我,想要優雅地、自在地活著,成為the best version of myself. 但是要怎麼樣才能夠對自己的狀態感到自在呢?