Flexbox基礎-處理圖片-跟著KP用21天征服Responsive Layout-W2

更新 發佈

對於前端工程師而言,如何處理圖片是一個看是基本但是又重要的技能。就像是日本料理的師傅要懂得處理生魚片一樣。

因為flexbox的flex-item有自動伸縮的功能,所以要注意裡面的圖片如何被伸縮。

圖片被flexbox拉長了

這裡讓我們看個例子:

html:img作為flex-item

<d class="row">
<p>
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."
</p>
<img src="https://picsum.photos/200/200">
</div>


css

.row{
display:flex;
}


結果:

raw-image


結果可以看到,圖片被拉長到和文字的高度一樣,而且比例被改變了(圖片的大小是200*200的正方形)。


flex-item的高度伸縮原理

在之前的文章,我們有提到flex-item如何水平伸縮,現在我們就來看看flex-item如何垂直伸縮。

flex-container有個屬性,叫做align-items,這個屬性是在處理flex-item的垂直對齊。而其預設值為stretch ,也就是flex-item都會拉長到一樣的高度(拉到和最高的flex-item一樣高)。


回到例子,如果要讓圖片不要被拉高,有兩個方式。

1.調整align-items

將align-items設定為flex-start,flex-item就會對齊頂部,高度不會拉長到一樣高,而是維持flex-item內容的原始高度。

.row{
display:flex;
align-items:flex-start; /*----調整align-items-----*/
}


結果

raw-image

可以看到,圖片就恢復成正常尺寸與比例了。

2.在圖片外層包div

另一個做法則是用div來包住圖片,這樣圖片就不是flex-item,也就不會被拉長了。

html

<d class="row">
<div class="col">
<p>
"At vero eos et accusamus et iusto odio dignissimos ducimus qui blanditiis praesentium voluptatum deleniti atque corrupti quos dolores et quas molestias excepturi sint occaecati cupiditate non provident, similique sunt in culpa qui officia deserunt mollitia animi, id est laborum et dolorum fuga. Et harum quidem rerum facilis est et expedita distinctio. Nam libero tempore, cum soluta nobis est eligendi optio cumque nihil impedit quo minus id quod maxime placeat facere possimus, omnis voluptas assumenda est, omnis dolor repellendus. Temporibus autem quibusdam et aut officiis debitis aut rerum necessitatibus saepe eveniet ut et voluptates repudiandae sint et molestiae non recusandae. Itaque earum rerum hic tenetur a sapiente delectus, ut aut reiciendis voluptatibus maiores alias consequatur aut perferendis doloribus asperiores repellat."
</p>
</div>
<div class="col"> <!--用div包裹住img--->
<img src="https://picsum.photos/200/200">
</div>
</div>


結果

raw-image

圖片也一樣恢復到原始的大小與比例了。


圖片的起手式

在上面的解法2,我們用div來包裹圖片,圖片就不會有flex-item的效果,也就不會有縮放的能力。

但是現在的網站,基本上都是Responsive。我們會希望圖片都具有伸縮的能力。所以我們會習慣在開頭時,就對所有圖片設置max-width:100%。

img{
max-width:100%
}


設置max-width:100%,可以讓圖片莫忘初衷:

1.具有伸縮性,且不會超過原始的大小。

2.圖片的比例都維持跟原始圖片一樣



結論:

1.flex-item的align-items預設是stretch,會將item都拉到一樣高。

2.在flexbox使用圖片時,可以用div將圖片包住,或是改變align-items。讓圖片不會不自然地拉高。

3.圖片起手式:max-width:100%。給予圖片伸縮的超能力,又讓圖片莫忘初衷(維持遠始比例與不超過原始大小。)

留言
avatar-img
留言分享你的想法!
avatar-img
Shang的 前端開發筆記
3會員
13內容數
歡迎來到我的部落格!這裡是一個分享前端開發、貓咪寫真以及與菲律賓女友生活的文化衝擊與英文學習的個人空間。我熱愛前端技術,喜歡追求最新的網頁開發趨勢,並將這些知識分享給大家。
2024/03/21
CatHelper是我開發的前端 SideProject,是貓咪募資收養的一站式平台。 我用戶使用流程、資料庫、頁面來構思這個專案。
Thumbnail
2024/03/21
CatHelper是我開發的前端 SideProject,是貓咪募資收養的一站式平台。 我用戶使用流程、資料庫、頁面來構思這個專案。
Thumbnail
2024/03/14
不同的運算子一起出現時,會根據其優先性(Precedence)來決定誰先誰後。MDN也很貼心的整理成表格了。 雖然有表格可以供我們查找,但是總不可能每一次用到運算子的時候,我們都去查找吧?我們最好對這張表有直觀上的理解與記憶。 那麼就讓我來分享我如何理解與記憶這張表吧! 運算子在做甚麼
Thumbnail
2024/03/14
不同的運算子一起出現時,會根據其優先性(Precedence)來決定誰先誰後。MDN也很貼心的整理成表格了。 雖然有表格可以供我們查找,但是總不可能每一次用到運算子的時候,我們都去查找吧?我們最好對這張表有直觀上的理解與記憶。 那麼就讓我來分享我如何理解與記憶這張表吧! 運算子在做甚麼
Thumbnail
2024/02/08
當前大多數網站不再是靜態網站,需要向後端的 Server 請求資料。而且,這些資料的請求通常是非同步進行的。在React中,目前被視為最佳實踐的方式是使用 useEffect。
2024/02/08
當前大多數網站不再是靜態網站,需要向後端的 Server 請求資料。而且,這些資料的請求通常是非同步進行的。在React中,目前被視為最佳實踐的方式是使用 useEffect。
看更多
你可能也想看
Thumbnail
社群媒體在現代生活中扮演著舉足輕重的角色,製作出吸引人的圖片成為小編甚至是行銷人員必備的技能。對於初學者來說,製作社群圖片其實並不困難,只需掌握以下四個步驟,任何人都可以輕鬆上手,製作出專業水準的圖片。
Thumbnail
社群媒體在現代生活中扮演著舉足輕重的角色,製作出吸引人的圖片成為小編甚至是行銷人員必備的技能。對於初學者來說,製作社群圖片其實並不困難,只需掌握以下四個步驟,任何人都可以輕鬆上手,製作出專業水準的圖片。
Thumbnail
製作圖片對於許多人來說可能是一項挑戰,但其實只要掌握一些基本要點,任何人都可以輕鬆上手,甚至在短短的3秒內完成一張吸引人的圖片。以下是8個關鍵要點,幫助初心者快速製作出專業水準的圖片。
Thumbnail
製作圖片對於許多人來說可能是一項挑戰,但其實只要掌握一些基本要點,任何人都可以輕鬆上手,甚至在短短的3秒內完成一張吸引人的圖片。以下是8個關鍵要點,幫助初心者快速製作出專業水準的圖片。
Thumbnail
實時繪圖(一)-安裝ComfyUI+krita心得與教學繼這一篇安裝完畢後,就是開始挑戰電商產品圖製作,意外的簡單,基本上素材找好,在調整個2分鐘,就完成了 接下來我就把我做的方法與步驟分享給大家巴 首先先找好的你的透明素材產品,那麼免費的素材網站我已經幫你找好了,可以商用,請注意一定要用去背的
Thumbnail
實時繪圖(一)-安裝ComfyUI+krita心得與教學繼這一篇安裝完畢後,就是開始挑戰電商產品圖製作,意外的簡單,基本上素材找好,在調整個2分鐘,就完成了 接下來我就把我做的方法與步驟分享給大家巴 首先先找好的你的透明素材產品,那麼免費的素材網站我已經幫你找好了,可以商用,請注意一定要用去背的
Thumbnail
在快速設計手繪的過程中,線條的美觀性是決定圖面質量的關鍵因素。線條的品質與握筆姿勢有著密不可分的關係,這直接影響到線條的流暢度以及畫面的整體視覺效果。本文探討了不同長度線條的手部發力點、線條解構、握筆姿勢訓練、以及手眼協調,並提供了相關練習方法和選擇工具和材料建議。
Thumbnail
在快速設計手繪的過程中,線條的美觀性是決定圖面質量的關鍵因素。線條的品質與握筆姿勢有著密不可分的關係,這直接影響到線條的流暢度以及畫面的整體視覺效果。本文探討了不同長度線條的手部發力點、線條解構、握筆姿勢訓練、以及手眼協調,並提供了相關練習方法和選擇工具和材料建議。
Thumbnail
在這篇文章中,我們將帶領讀者深入探討數位圖片管理的核心——「連結影像」與「嵌入影像」的使用技巧。這是每位從事視覺設計、版面編排和數位藝術的創作者必須掌握的基本知識。在進行數位設計時,如何選擇這兩種不同的圖片處理方式,不僅關係到作品的最終呈現,還直接影響到工作流程的效率和靈活性。 追尋影像的軌跡
Thumbnail
在這篇文章中,我們將帶領讀者深入探討數位圖片管理的核心——「連結影像」與「嵌入影像」的使用技巧。這是每位從事視覺設計、版面編排和數位藝術的創作者必須掌握的基本知識。在進行數位設計時,如何選擇這兩種不同的圖片處理方式,不僅關係到作品的最終呈現,還直接影響到工作流程的效率和靈活性。 追尋影像的軌跡
Thumbnail
當今數位化快速發展的時代,圖像處理已經成為平面設計、出版業以及廣告製作中不可或缺的一環。Adobe Illustrator和InDesign作為行業內公認的專業設計軟件,它們在處理各式各樣的影像方面擁有強大的功能,但同時也伴隨著諸多需要注意的細節。今天,讓我們深入探討置入影像時的細節管理,從色彩模式
Thumbnail
當今數位化快速發展的時代,圖像處理已經成為平面設計、出版業以及廣告製作中不可或缺的一環。Adobe Illustrator和InDesign作為行業內公認的專業設計軟件,它們在處理各式各樣的影像方面擁有強大的功能,但同時也伴隨著諸多需要注意的細節。今天,讓我們深入探討置入影像時的細節管理,從色彩模式
Thumbnail
影像和檔案的處理技術已成為設計師的基本功。從精緻的插圖到複雜的版面設計,每一步操作都蘊含著無限的可能性與挑戰。本文將帶領您深入了解如何精準控制影像置入過程中的細節,從而達到既定的設計目標。 精確控制影像置入的技巧 當我們談論將影像或檔案置入Adobe Illustrator或InDesign時,
Thumbnail
影像和檔案的處理技術已成為設計師的基本功。從精緻的插圖到複雜的版面設計,每一步操作都蘊含著無限的可能性與挑戰。本文將帶領您深入了解如何精準控制影像置入過程中的細節,從而達到既定的設計目標。 精確控制影像置入的技巧 當我們談論將影像或檔案置入Adobe Illustrator或InDesign時,
Thumbnail
本篇文章介紹了透過角色造型所能紀錄的不同階層生活面相,包括從職業、配件物品和角色身上觀察到的元素。同時也提到了觀察參考圖片和繪圖流程中需要注意的事項,以及周遭人在角色創作中的重要性。
Thumbnail
本篇文章介紹了透過角色造型所能紀錄的不同階層生活面相,包括從職業、配件物品和角色身上觀察到的元素。同時也提到了觀察參考圖片和繪圖流程中需要注意的事項,以及周遭人在角色創作中的重要性。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News