【 Framer】Laylout-Position 介紹:絕對定位

更新於 發佈於 閱讀時間約 6 分鐘
raw-image

前言

網頁的定位方式主要有以下這幾種:

  • 絕對定位(Absolute):可以自由定位圖層,相對於其父層進行定位。
  • 相對定位(Relative):位置取決於內容在堆疊或網格中的排列方式。
  • 固定定位(Fixed):圖層的位置固定在視窗上,無論頁面如何滾動都不會改變。
  • 黏性定位(Sticky):當圖層到達視窗頂端時,從相對定位切換為固定定位,離開父層範圍時再切回相對定位。

本文將帶你深入了解 Framer 的絕對定位,並教你如何靈活運用在實際專案中。

絕對定位(Absolute Positioning)

簡單來說,絕對定位讓你可以將元素(可以理解成物件/圖片/一段文字/一個裝飾物)放置在畫面上的任何位置,而不受其他元素的影響。也就是元素直接依據你設定的位置與數值進行擺放。這種方式非常類似於我們在 Figma / photoshop/illustrator 中自由拖拉圖層感覺。

在 Framer 中,絕對定位的元素會相對於父層框架(Parent Layers)來定位。無論是距離上方、下方、左側或右側,你都可以精確地設定數值,讓設計達到你想要的效果。

在 Framer 上的操作

絕對定位的核心概念

  • 絕對定位的圖層:可以想像成「浮動」的,您可以隨意移動它們,完全不必考慮其他同層圖層,只需專注於與父層的相對位置。
    接下來的示範圖片或影片,需要了解的有:
    -藍色背景:父層框架(Parent Layers)。
    -紅色方形:子層物件(Children Layers)與圓形為sibling layers,絕對定位作用在此物件。
    -綠色圓形:子層物件,與方形為sibling layers,相對定位。
raw-image
  • 與設計工具的差異:在 Figma 或 Sketch 中,我們用 X、Y 座標來定位(通常以左上角為基準)。而在 Framer 中,則使用「釘選(Pinning)」和「Positioning」的組合,這更符合網頁設計中 HTML 和 CSS 的邏輯。

釘選(Pinning)與位置設定

  • 釘選的概念:釘選某個邊緣(例如上方 20 像素)表示您希望這個距離在父層改變大小時保持不變。
  • 未釘選的邊緣:如果不釘選,則代表不在意與父層之間的距離是否會改變,適用於需要隨父層縮放的設計。
  • 釘選控制方式:可以透過屬性面板手動輸入數值或直接點擊釘選控制按鈕來切換釘選狀態。點擊中央按鈕可以快速切換「釘選所有邊」或「不釘選任何邊」,此時圖層會以父層的中心為基準。
raw-image

釘選的影響範圍

  • 父層大小改變時:釘選會確保圖層與父層之間的間距保持一致。
  • 子層大小改變時:例如,當釘選了右上角,並調整子層的寬度,與右邊的距離仍會維持設定的固定間距,避免每次調整尺寸後還要重新定位。
  • 響應式設計的重要性:良好的釘選設定可以幫助設計在不同裝置和螢幕尺寸下自動適應,無需額外調整。

絕對定位與堆疊(Stacks)的互動

  • 相對定位的堆疊行為:在垂直堆疊中,所有子層會依序排列,拖曳僅能在堆疊內重新排序。
  • 切換為絕對定位:將某個子層從相對定位切換為絕對定位後,該圖層會脫離堆疊的排列規則,可以自由拖曳定位。
  • 圖層重疊問題(Z-Index):切換為絕對定位後,系統會自動為該圖層設定 z-index,來控制層級的前後順序。z-index 數值越高,圖層越靠前;數值相同時,則依照圖層面板中的順序決定前後關係。

Recap

  1. 絕對定位 = 自由定位,可像在 Figma、Sketch 中一樣隨意拖曳圖層。
  2. 釘選(Pinning)+ 位置設定 = Framer 中取代 X、Y 座標的核心定位邏輯。
  3. 釘選決定響應式行為,良好的釘選設計有助於自適應不同螢幕尺寸。
  4. 與堆疊互動時,絕對定位的圖層會脫離堆疊的內容流,但仍可透過 z-index 控制圖層前後順序。
  5. z-index 控制圖層層級,數值越高越在前,與圖層排序無關。

使用時機

為什麼要使用絕對定位?

  • 精確控制位置:當你需要將某個按鈕或裝飾圖案放在特定位置時,絕對定位能讓你輕鬆完成。
  • 製作浮動元素:例如固定在角落的返回按鈕、標籤或提示框,都可以使用絕對定位實現。
  • 創造視覺層次:絕對定位可讓元素自由重疊,達到豐富的視覺效果。


什麼時候不適合使用絕對定位?

雖然絕對定位提供了極大的自由度,但它並非適用於所有情況。

  • 響應式設計挑戰:絕對定位的元素不會自動調整位置或尺寸,可能在不同螢幕尺寸下出現錯位。
  • 內容變動限制:當內容動態變化時,絕對定位的元素可能需要手動調整位置,增加維護成本。
  • 結構複雜度增加:大量使用絕對定位可能讓你的設計層次混亂,影響後續的修改與維護。


常見錯誤與排除技巧

即使掌握了基本技巧,設計師在使用 Framer 絕對定位時仍可能遇到一些常見問題。這裡列出幾個常見錯誤及其解決方案,幫助你快速排除障礙。

  1. 元素定位錯誤:確保絕對定位的元素是在正確的父層框架內。若位置不如預期,檢查父層是否正確設置。
  2. 重疊元素無法點擊:若元素被其他絕對定位元素遮蓋,使用 Z-Index 調整層級,或檢查是否有透明元素阻擋。
  3. 在不同螢幕尺寸錯位:檢查釘選設置,確保元素在各種螢幕尺寸下能保持一致位置。


參考:Framer Academy


想學更多 Framer 技巧嗎? 持續關注鈕扣,解鎖更多設計秘訣!

▪️No-code=鈕扣=button=按鈕 ▪️Eva 是一個Uiux 設計師,也是喜歡研究no-code 工具的網頁設計師。享受從設計到開發上線的過程。 #Framer #Webflow #Spline
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
Thumbnail
浮動(float)是早期用來創建佈局的技術。元素可以向左或向右浮動,旁邊的元素會環繞浮動元素。浮動元素通常用於圖文混排或簡單的兩欄佈局。
Thumbnail
本文介紹瞭如何在SwiftUI中調整元件的對齊方式,包括置中、向左/向右/向上/向下對齊的方法。透過調整HStack、VStack以及frame的maxWidth、maxHeight和alignment屬性,可以達到想要的對齊效果。
Thumbnail
Anytype主要分為四區塊:目錄欄(Widget組成)、主編輯畫面、導航選單、設定區。
Thumbnail
自訂元件生成位置顧名思義就是可以指定部分HTML區塊渲染在特定的畫面上,即使在不同組件也能把A組件內的部分畫面,展現在B組件上,以下方程式舉例。
Thumbnail
2023 Vue直播班筆記 - 動態路由Props,接續之前的一般動態路由。分為 "寫死" 及 "彈性" 兩種。
Thumbnail
本書介紹了戰略設計、管理領域複雜度、實際應用領域驅動設計等主題。透過對核心子領域、支持子領域、限界上下文等概念的探討,提供了領域驅動設計的相關知識。這篇文章中還涉及了微服務、事件驅動架構和資料網格等相關主題,提供了設計系統和應用領域驅動設計的指導。
快速釋放固定件是一種革命性的創新解決方案,重新定義了固定效率和靈活性。這篇文章將深入探討快速釋放固定件的特點、優勢和應用,從無需工具的存取面板到模塊化組裝系統。發現這些多功能固定件如何讓製造商能夠簡化生產流程、最小化停機時間,並輕鬆適應不斷變化的設計需求。
Thumbnail
題目敘述 題目會給我們一組定義好的界面和需求,要求我們設計一個資料結構,可以滿足平均O(1)的插入元素、刪除元素、隨機取得元素的操作。 RandomizedSet() 類別建構子 bool insert(int val) 插入元素的function界面 bool remove(int val
本課程學習如何使用 ConstraintLayout 約束佈局中的 Chains 鏈結屬性。
提問的內容越是清晰,強者、聰明人越能在短時間內做判斷、給出精準的建議,他們會對你產生「好印象」,認定你是「積極」的人,有機會、好人脈會不自覺地想引薦給你
Thumbnail
浮動(float)是早期用來創建佈局的技術。元素可以向左或向右浮動,旁邊的元素會環繞浮動元素。浮動元素通常用於圖文混排或簡單的兩欄佈局。
Thumbnail
本文介紹瞭如何在SwiftUI中調整元件的對齊方式,包括置中、向左/向右/向上/向下對齊的方法。透過調整HStack、VStack以及frame的maxWidth、maxHeight和alignment屬性,可以達到想要的對齊效果。
Thumbnail
Anytype主要分為四區塊:目錄欄(Widget組成)、主編輯畫面、導航選單、設定區。
Thumbnail
自訂元件生成位置顧名思義就是可以指定部分HTML區塊渲染在特定的畫面上,即使在不同組件也能把A組件內的部分畫面,展現在B組件上,以下方程式舉例。
Thumbnail
2023 Vue直播班筆記 - 動態路由Props,接續之前的一般動態路由。分為 "寫死" 及 "彈性" 兩種。
Thumbnail
本書介紹了戰略設計、管理領域複雜度、實際應用領域驅動設計等主題。透過對核心子領域、支持子領域、限界上下文等概念的探討,提供了領域驅動設計的相關知識。這篇文章中還涉及了微服務、事件驅動架構和資料網格等相關主題,提供了設計系統和應用領域驅動設計的指導。
快速釋放固定件是一種革命性的創新解決方案,重新定義了固定效率和靈活性。這篇文章將深入探討快速釋放固定件的特點、優勢和應用,從無需工具的存取面板到模塊化組裝系統。發現這些多功能固定件如何讓製造商能夠簡化生產流程、最小化停機時間,並輕鬆適應不斷變化的設計需求。
Thumbnail
題目敘述 題目會給我們一組定義好的界面和需求,要求我們設計一個資料結構,可以滿足平均O(1)的插入元素、刪除元素、隨機取得元素的操作。 RandomizedSet() 類別建構子 bool insert(int val) 插入元素的function界面 bool remove(int val
本課程學習如何使用 ConstraintLayout 約束佈局中的 Chains 鏈結屬性。