我的前端佈局方法

来源:https://www.cnblogs.com/itzhangsiyuan/archive/2019/07/17/11203311.html
-Advertisement-
Play Games

前些日子無聊的時候學了下前端,說實話沒有美感前端和搬磚沒有區別,唯一值得一提的就是他的佈局方法。我的這個方法用於寫死網頁,不含各種框架的自適應性功能,而且主要想記錄一下思想。 寫前端不同於演算法優化,演算法中經常是能少一個數組就少一個數組,而前端只要保證不亂,多套幾個div沒有任何關係,也沒人會深究你浪 ...


前些日子無聊的時候學了下前端,說實話沒有美感前端和搬磚沒有區別,唯一值得一提的就是他的佈局方法。我的這個方法用於寫死網頁,不含各種框架的自適應性功能,而且主要想記錄一下思想。

    寫前端不同於演算法優化,演算法中經常是能少一個數組就少一個數組,而前端只要保證不亂,多套幾個div沒有任何關係,也沒人會深究你浪費了幾個div。所以基本上是每一個模塊都套一個div,兄弟也好後代也好,有意義就套,只要自己不嫌麻煩就行。而且始終秉持一個思想,先佈局後寫內容,寫每一塊思路都要清晰,多寫幾遍誰都會熟練,再多總結把用的多的組件封裝一下,不用動腦兩三個小時出一套前端不成問題。

    佈局思想方面,彈性盒子佈局會減掉許多麻煩,主要是由於他的排列以及居中方式可以代替各種邊距和浮動設置。手機端只需適應各種手機屏幕即可,所以稍微關註一下電腦端即可。解析度最窄1024px,最寬1920px,寫出的網頁要想適應所有屏幕,最好的方法就是內容部分給一個最小寬度,然後兩邊留白,其實這也是當下淘寶等網頁採用的方法。具體來說,就是整體內容外麵包一個div,寬度一般1000左右,然後使用margin:0 auto;水平居中,當然也可以再做些媒體查詢。

    對於整體佈局,我這裡封裝了兩種寬度,百分比式寬(fluidwidth)和固定長度式寬(containerwidth)。百分比式寬電腦端整體佈局基本不用,只用於部分佈局;移動端整體部分佈局都用,但要防止有東西擠下來。固定長度式寬電腦、移動端都用於整體佈局。

    對於div內部,我這裡使用了center-all、justify、align等三種居中方式,能不用邊距對齊就不用。至於div之間的排列,橫向的有latitude-spacearound、spacebetween,縱向的有longitude,足以應付絕大多數排列。

    而網頁中模塊之間,我使用外邊距來隔開。還有,每次寫網頁,佈局時一般都給個底色,我這裡是第一層底色用紅黃綠藍,第二層用粉棕。

    寫完靜態網頁後,剩下的就是動態網頁了。用的最多的輪播圖用swiper最好,其餘我只寫過一些原生js,js水很深再加上我也沒興趣做個前端工程師沒有往深走,所以也就不多敘述了。。

 

下麵奉上我的佈局框架:

/*------------------------公共樣式表----------------------------*/
* {
margin: 0px;
padding: 0px;
border: 0px;
}
a {
text-decoration: none;
}
p {
text-indent: 16px;
font-size: 15px;
color: #333333;
}
.center-all {
display: flex;
justify-content: center;
align-items: center;
}
.center-align {
display: flex;
align-items: center;
}
.center-justify {
display: flex;
justify-content: center;
}
.latitude-spacearound {
display: flex;
align-items: center;
justify-content: space-around;
}
.latitude-spacebetween {
display: flex;
align-items: center;
justify-content: space-between;
}
.longitude {
display: flex;
flex-direction: column;
}
.fixedwidth {
width: 1349px;
margin: 0 auto;
padding: 0 6%;
box-sizing: border-box;
}
/*百分比式佈局欄*/
.fluidwidth {
width: 100%;
box-sizing: border-box;
}
首先很感謝前些日子帶過我的zzw同學,讓我無聊的日子看起來不那麼無聊。老實說bootstrap4其實也學的差不多了,理論上寫一個出來也沒什麼問題,可是我實在沒有寫一個出來的動力。。這幾個月想了很多,並非程式上的問題,而是關於自己為什麼敲碼,以及人生方面的問題。不做個前端的話,那我寫bootstrap4好像除了浪費大腦記憶體,沒什麼別的卵用了,如果真要寫個前端,現學也不成問題。相比之下,我想做一些自己喜歡的、擅長的、對自己而言有意義的事。。

 

非常抱歉。。
---------------------
作者:Flynn_curry
來源:CSDN
原文:https://blog.csdn.net/Flynn_curry/article/details/93312235
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. Activity:是整個應用程式的門面,主要負責應用程式中數據的展示。 2. Intent:應用程式中所有的數據都需要通過Intent來傳遞。 3. Service:不可見,卻承擔著應用程式中大部分數據處理的工作。 4. ContentProvider:負責存儲數據,並允許有需要的應用程式訪問 ...
  • C++記憶體泄漏問題的分析、定位一直是Android平臺上困擾開發人員的難題。因為地圖渲染、導航等核心功能對性能要求很高,高德地圖APP中存在大量的C++代碼。解決這個問題對於產品質量尤為重要和關鍵,高德地圖技術團隊在實踐中形成了一套自己的解決方案。 ...
  • 教學視頻+源碼 ,百度雲鏈接 , 總共40G左右。 如有涉權,請聯繫, 馬上刪除!!! 下載地址 ...
  • 一、屬性選擇器 1. (1)定義:根據指定的 屬性名稱找到對應的標簽,然後設置屬性 (2)格式:標簽[屬性=值]:{屬性:值;] 註意:前一個值是不帶引號的 (3)例子: 解釋:我們在p標簽中找到帶id屬性(如果id屬性值預設那麼我們就認為是全部的這種屬性都是選中的)的,然後設置為紅色 (4)場景: ...
  • Node.js的應用領域 NodeJS宣稱其目標是“旨在提供一種簡單的構建可伸縮網路程式的方法”; Node.js 是一個基於 Chrome V8 引擎的 JavaScript 運行環境。Node.js 使用了一個事件驅動、非阻塞式 I/O 的模型,使其輕量又高效。Node.js 的包管理器 npm ...
  • JsonServer 主要的作用就是搭建本地的數據介面,創建json文件,便於調試調用 是一個 Node 模塊,運行 Express 伺服器,可以指定一個 json 文件作為 api 的數據源 官網:https://www.npmjs.com/package/json-server 安裝全局的jso ...
  • 在曾經,我們只能用A.indexof(B)來判斷A中是否含有B字元串; 現在在ES6中 有了: includes(), startswith(),endswith() reapt()重覆次數; 輸出 `是一個新增的運算符,表示模板字元串。 輸出: 好高興啊,我買了一個手機,花了10元,我很高興啊!、 ...
  • 內邊距和外邊距之間即為border,可以設置邊框,改變外觀; 而邊距可以調整齣所有想要的距離效果。 補充: ...
一周排行
    -Advertisement-
    Play Games
  • 示例項目結構 在 Visual Studio 中創建一個 WinForms 應用程式後,項目結構如下所示: MyWinFormsApp/ │ ├───Properties/ │ └───Settings.settings │ ├───bin/ │ ├───Debug/ │ └───Release/ ...
  • [STAThread] 特性用於需要與 COM 組件交互的應用程式,尤其是依賴單線程模型(如 Windows Forms 應用程式)的組件。在 STA 模式下,線程擁有自己的消息迴圈,這對於處理用戶界面和某些 COM 組件是必要的。 [STAThread] static void Main(stri ...
  • 在WinForm中使用全局異常捕獲處理 在WinForm應用程式中,全局異常捕獲是確保程式穩定性的關鍵。通過在Program類的Main方法中設置全局異常處理,可以有效地捕獲並處理未預見的異常,從而避免程式崩潰。 註冊全局異常事件 [STAThread] static void Main() { / ...
  • 前言 給大家推薦一款開源的 Winform 控制項庫,可以幫助我們開發更加美觀、漂亮的 WinForm 界面。 項目介紹 SunnyUI.NET 是一個基於 .NET Framework 4.0+、.NET 6、.NET 7 和 .NET 8 的 WinForm 開源控制項庫,同時也提供了工具類庫、擴展 ...
  • 說明 該文章是屬於OverallAuth2.0系列文章,每周更新一篇該系列文章(從0到1完成系統開發)。 該系統文章,我會儘量說的非常詳細,做到不管新手、老手都能看懂。 說明:OverallAuth2.0 是一個簡單、易懂、功能強大的許可權+可視化流程管理系統。 有興趣的朋友,請關註我吧(*^▽^*) ...
  • 一、下載安裝 1.下載git 必須先下載並安裝git,再TortoiseGit下載安裝 git安裝參考教程:https://blog.csdn.net/mukes/article/details/115693833 2.TortoiseGit下載與安裝 TortoiseGit,Git客戶端,32/6 ...
  • 前言 在項目開發過程中,理解數據結構和演算法如同掌握蓋房子的秘訣。演算法不僅能幫助我們編寫高效、優質的代碼,還能解決項目中遇到的各種難題。 給大家推薦一個支持C#的開源免費、新手友好的數據結構與演算法入門教程:Hello演算法。 項目介紹 《Hello Algo》是一本開源免費、新手友好的數據結構與演算法入門 ...
  • 1.生成單個Proto.bat內容 @rem Copyright 2016, Google Inc. @rem All rights reserved. @rem @rem Redistribution and use in source and binary forms, with or with ...
  • 一:背景 1. 講故事 前段時間有位朋友找到我,說他的窗體程式在客戶這邊出現了卡死,讓我幫忙看下怎麼回事?dump也生成了,既然有dump了那就上 windbg 分析吧。 二:WinDbg 分析 1. 為什麼會卡死 窗體程式的卡死,入口門檻很低,後續往下分析就不一定了,不管怎麼說先用 !clrsta ...
  • 前言 人工智慧時代,人臉識別技術已成為安全驗證、身份識別和用戶交互的關鍵工具。 給大家推薦一款.NET 開源提供了強大的人臉識別 API,工具不僅易於集成,還具備高效處理能力。 本文將介紹一款如何利用這些API,為我們的項目添加智能識別的亮點。 項目介紹 GitHub 上擁有 1.2k 星標的 C# ...