移動開發基礎-學習筆記二-字體圖標、less、bootstrap入門

来源:https://www.cnblogs.com/NikoChen/archive/2019/02/16/10388030.html
-Advertisement-
Play Games

1.字體圖標 1.字體圖標都是用svg圖片 1.svg圖片不失真 2.svg圖標由設計師提供 3.為了減少網路請求,會把svg圖標轉換成字體圖標,放到字體文件中,通過字體庫的方式使用 1.svg圖片不失真 2.svg圖標由設計師提供 3.為了減少網路請求,會把svg圖標轉換成字體圖標,放到字體文件中 ...


1.字體圖標

1.字體圖標都是用svg圖片

  • 1.svg圖片不失真

  • 2.svg圖標由設計師提供

  • 3.為了減少網路請求,會把svg圖標轉換成字體圖標,放到字體文件中,通過字體庫的方式使用

2.製作步驟

  • 1.上傳字體圖標到線上製作網站:阿裡圖標庫或iconmoon

  • 2.下載代碼

  • 3.註意點:在上傳之前要把圖標的名字改好,不然類名會帶有尾碼

3.原理

  • 1.css3語法引入字體:@font-face

  • @font-face {

  • font-family: "自定義字體名";

  • src : url() format(),

  • url() format()

  • }

    • 1.自定義字體名:後面需要使用該字體名

    • 2.引入多個url:相容各種瀏覽器

    • 3.format:聲明資源格式,方便瀏覽器識別

  • 2.將字體用類包裝在類名中 ,方便賦予樣式

    • 1..icon { font-family: "自定義字體名" }

    • 2.高級方法: [class^="icon-"],[class*=" icon-"]{ font-family: "自定義字體名" }

  • 3.將圖標編碼包裝在類名中,方便賦予樣式

      1. .icon-名字 { content: "unicode轉碼"

    • 2.html轉碼在下載的文件中就有

2.預處理器

1.作用:讓css變得更加簡潔和強大

2.原理:預先寫好一些高級的css,通過特定編譯方式再轉成css讓瀏覽器識別

3.常見的預處理器

  • 1.less:目前最流行

    • 1.引入less

      • 1.引入less文件:<link type="stylesheet/less" src>

      • 2.引入less編譯文件:less.js

        • 用於編譯less文件,應該就是獲取上面的less文件,然後通過正則表達式將less文件轉換成css代碼,放在head裡面,作為內嵌式。所以需要放在less文件後面

  • 2.sass

  • 3.stylus

  • 4.相似,只要學會一種,其他的就都會了

3.less

1.特點

  • 1.完全相容css,並且擴展了css

  • 2.語法簡潔,與css類似,容易上手

  • 3.使用less.js編譯

2.語法

  • 1.變數

  • 2.mixins混入(自定義函數)

  • 3.嵌套(跟標簽一樣嵌套,外面容器不需要重覆寫)

  • 4.操作(運算符+-*/)

  • 5.轉碼(把一些css代碼當成字元串轉碼到裡面)

  • 6.函數(系統函數)

3.具體使用

  • 1.編譯

    • 1.使用node.js編譯(暫時不學)

    • 2.引入文件進行編譯

      • 1.引入cdn托管的靜態資源

      • 2.引入自己的less.js

      • 3.需要使用伺服器打開

    • 3.vscode有編譯插件

    • 4.開發中,使用less.js;上線用編譯完之後css文件

      • 用less.js會在html頁面上報錯

  • 2.變數

    • 1.定義變數

      • 1.@變數名:變數值

      • 2.命名規範和js差不多,只用一個差別:中間可以有橫杠

    • 2.使用變數:@變數名

  • 3.嵌套

    • 1.嵌套的選擇器是css中的選擇器,一般情況下,嵌套中的一級括弧相當於css中的空格

    • 2.嵌套中的&表示上一層的選擇器,與js中this作用相同。一般用在偽類,偽元素,交集選擇器中

  • 4.運算符

  • 5.引入其他less文件:@import 路徑

  • 在哪裡寫這句代碼,目標文件的內容就引入到那裡。

  • 一般在最前面引入

  • 6.使用細節

    • 1.在一個選擇器a中寫另一個選擇器b,可以將選擇器b中的代碼帶入這個位置

    • 2.通常把變數和自定義函數分別封裝在特定的文件中

      • 1.變數:variables.less

      • 2.函數:mixins.less

    • 3.

  • 7.less.js工作原理

    • 1.通過rel請求less文件

      • 需要伺服器

    • 2.通過js中的正則表達式將less轉換成css文件

    • 3.將css代碼動態添加到style標簽中

  • 8.編譯

    • 1.開發環境中使用less.js,因為這樣在less中有錯誤時,html頁面胡報錯

    • 2.在生產環境中使用已編譯好的css文件

4.選擇器

1.下一個兄弟選擇器:+。選中下一個符合條件的兄弟元素

.box1 + .box2 選中.box1下一個且類名為.box2元素

2.後面兄弟選擇器:~。選中後面所有符合條件的兄弟元素

.box1 ~ .box2:選中.box1後面所有類名為.box2的兄弟元素

3.一般用於排除第一個兄弟元素

1.補充知識

1.以後開發中大部分都是用border-box

2.柵格系統中的所有元素都加了相對定位

3.不推薦給父元素加高度,用子元素撐開

4.bootstrap裡面如果在動畫時樣式消失,則可能是類名被覆蓋,或標簽、樣式名被動畫修改

5.輪播圖的圖片

  • 1.大中小屏幕使用大圖片,且寬高不應該隨屏幕寬度的變化而變化,因為這樣會讓圖片難以看清。這時候的圖片應該作為背景,背景居中,然後輪播圖高給定,寬度自適應。

  • 2.寬度自適應,超小屏幕使用小圖片,並且寬高自使用就行了,因為小屏幕的寬高變化不大

6.對一整個句子如果會換行,則應該使用padding讓文字居中。如果一整個句子不會換行,就使用行高居中

XMind: ZEN - Trial Version

 


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

-Advertisement-
Play Games
更多相關文章
  • 什麼是組件化 不用去糾結組件和模塊語義上的區別,如果模塊間不存在強依賴且模塊間可以任意組合,我們就說這些模塊是組件化的。 組件化的好處 1. 實現組件化本身就是一個解耦的過程,同時也在不斷對你的項目代碼進行提煉。對於已有的老項目,實現組件化剛開始是很難受的,但是一旦組件的框架初步完成,對於後期開發效 ...
  • 一、效果圖 二、思路 1. 定義兩個 CSS 過度動畫,前進與後退: slide-right-enter 和 slide-left-enter 2. 給路由配置meta信息,設置各個路由的級別: index 3. 監控路由跳轉,比對 meta 信息級別,如果從大跳轉到小說明是返回,從小跳轉到大則是前 ...
  • Vue完成 TodoList 1.預設方式 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>TodoList</title> <script src="../../vue.js"></script> </he ...
  • 由使用request-promise-native想到的非同步處理方法 問題場景 因為js語言的特性,使用node開發程式的時候經常會遇到非同步處理的問題。對於之前專長App開發的我來說,會糾結node中實現客戶端API請求的“最佳實踐”。下麵以OAuth2.0為場景,需要處理的流程: 處理過程 一開始 ...
  • 封裝就是要具有靈活性,樣式自適應,調用的時候傳入props就可以變成自己想要的樣式。 效果展示網址:https://1963331542.github.io/ 源代碼: 1 <template> 2 <div :style="mainBoxStyle"> 3 <div :style="topLine ...
  • 修改|新增jquery-easyui icon圖標 by:授客 QQ:1033553122 測試環境 jquery-easyui-1.5.3 修改配置文件 打開jquery-easyui-1.5.3\themes\icon.css文件,文件頭部添加目標圖標樣式,例子: .icon{ backgrou ...
  • 修改jquery validatebox為英文校驗提示為中文提示 by:授客 QQ:1033553122 測試環境 jquery-easyui-1.5.3 問題描述: 如圖,想把校驗提示由英文改成中文 解決方案 編輯jquery.easyui.min.js 文件,搜索以下內容, missingMes ...
  • 1,打卡簽到 —— 500米範圍限制 a,getLocation 獲取gcj02 == 騰訊系坐標,可以直接用來打開騰訊地圖 (獲取wgs84則需轉換) b,百度坐標轉騰訊坐標,引入鏈接配置 <script charset="utf-8" src="http://map.qq.com/api/js? ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...