整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          HTML電腦編程03 標題物理字體標簽的使用,大學生

          HTML電腦編程03 標題物理字體標簽的使用,大學生學編程

          全棧攻城獅-每日更新原創IT編程技術及日常實用視頻。

          主要內容:正式引入HTML網頁開發,學習并了解HTML的相關知識。變身Web開發達人,做全棧程序員。這是HTML技術的第二課,主要講解一下HTML的幾大重要標簽,做出來比較不錯的顯示效果。



          回顧上節

          上節中主要講解了HTML的開發工具以及書寫了第一個Web網頁。上節請戳→HTML電腦編程02 書寫第一個Web網頁 程序員學習復習

          第一個HTML網頁

          其中包括<html>....</html>標簽、<head>...</head>(頭部標簽)、<title>...</title>(標題標簽)、<body>...</body>(身體標簽)。每個標簽都有自己的含義。其實還有很多非常重要的標簽的。下面我們一起來看一看。

          PS小技巧:分享個寫標簽的小技巧,在書寫(<)時,順帶著把(>)也也寫好了。成對成對的寫,對于標簽也適用,如在寫html標簽時。書寫順序如下:

          1.<

          2.>

          3.html

          4.<

          5.>

          6./html


          文本標簽

          對于標簽的學習,最好進行分類,這樣就可以快速的進行學習了。首先說一下文本標簽。

          文本標簽是用來顯示文字的。只要是內容的東西,咋就意味著需要卸載body內:

          body標簽

          如同上節課一樣,直接在body標簽中寫文字也是可行的。但是你無法對字體顏色格式等信息進行控制。所以出現了不同的文本標簽,用來顯示設置不同的字形。


          標題標簽

          如同名字一樣,標題標簽就是標題。使用這個標簽可以讓你的內容和標題一樣顯示。標題標簽包括<h1>-<h6>六種。

          6種標題標簽

          其顯示效果如下:

          6種標題標簽的展示效果

          可以看到H1-H6標簽的大小不一致。H后面的數字越大反而越小。

          H標簽中還包含一個屬性align。那到底什么是屬性呢?


          屬性

          屬性以鍵值對的形式存在。屬性是相對于標簽而言的,也就是需要把屬性寫在標簽內。既然是屬性,也就意味著可以改變標簽的某些功能。例如H標簽中含有align屬性。這就是用來控制對齊方式的。

          align屬性

          align屬性就是用來控制對齊方式的。通過上圖,也可以看到屬性的書寫方式。一起來看一下效果吧:

          align屬性的不同效果

          align屬性常用的包括left(靠左)、center(居中)、right(靠右)三個基本值。


          物理字體

          下面介紹幾個物理字體的標簽。物理字體指的是:加粗、斜體、下劃線、上下標等

          粗體:

          粗體

          粗體顯示的效果

          還有其他的標簽,和b標簽使用方式一致:

          各種物理字體

          大家直接試用一下就可以看到效果了。

          本教程由做全棧攻城獅,原創首發,如有轉載,請注明出處。

          如果你有什么比較不錯的編程技巧,或者你想要什么程序員編程資源,點擊下方了解更多。

          天逛codepen的時候發現了一個不錯的文字動畫效果,如此絲滑飄逸的效果必須得研究研究,可以看到字體粗細切換過渡效果很均勻,不像我們平常使用字體時設置 font-weight 的效果,日常設置字重的時候并不是每個值都會生效,只會有幾個區間的值是可用的,以下代碼給6個p標簽設置font-weight 從 100 到 600:

          @for $i from 1 through 6 {
            p:nth-child(#{$i}) {
              font-weight: 100 + 100 * ($i - 1);
            }
          }
          

          可以看到并不是每個階段字重都有變化的,當然這和不同的字體和是否中英文有一定的關系,但是設置字重的效果都是不夠理想的狀態。

          這里就要引出今天文章所講的可變字體了,基于可變字體(font-variation)將不再有這種困擾,當然也會有一定的弊端。

          什么是可變字體

          可變字體(Variable Fonts),也稱為多軸字體、自由度字體或超級字體,是一種新興的字體技術,它是一種可以在多個自由度上進行動態調整的字體格式。與傳統字體不同的是,「可變字體能夠在單個字體文件中包含多種字重、寬度、傾斜和其他軸的變體,而不需要使用多個不同的字體文件」

          簡單理解可變字體就是通過使用可變字體,所有字重、字寬、斜體等情況的組合都可以被裝在一個文件中。相應的弊端就是這個文件可能比常規的單個字體文件更大了。

          可變字體支持使用font-variation-settings屬性來控制字體的各種軸,通過調整這些軸的值,可以實現自定義字體樣式的效果。

          以下設置一個可變字體的粗細從 100 到 600,

          font-variation-settings: "wght" 100, "ital" 0;
          

          可以看到這次的字體是均勻的變化粗細,就如同設置 font-weight: 100font-weight: 600 的逐漸變化。

          可變字體瀏覽器兼容情況,可以看到基本的瀏覽器都已經支持。

          如何使用

          這個是根據字體的設計者來決定,字體的設計提供了各種各種可以被修改的軸,比如粗細,長短以及任何合理范疇之內的。下面提供幾個常用的保留軸:

          • wdth: 用于修改字的寬窄
          • wght: 用于修改字的粗細
          • ital: 是否傾斜,0為非傾斜,1為斜體
          • slnt: 用于修改字的傾斜程度
          • opsz: 對于字形的修改

          找到可用的可變字體

          如果你想要使用它,你首先要找到相關字體資源。在這個網站 v-fonts.com 你能找到很多可變字體,很多都是在github開源,并且可以直接下載的。

          在CSS中使用

          通過@font-face引入到頁面內:

          @font-face {
              font-family: 'VennVF';
              src: url('VennVF_W.woff2') format('woff2-variations'),
                  url('VennVF_W.woff2') format('woff2');
          }
          

          每個可變字體都有不同的軸和不同的范圍,如果你不知道可變字體能做什么改變,你可以使用這個(wakamaifondue.com)在線工具,可以幫你生成現成的css使用。

          目前可以通過font-variation-settings屬性,我們可以方便地控制自定義字體的不同軸,比如設置如下代碼:

          p {
           font-family: "VennVF";
           font-variation-settings: "wght" 550, "wdth" 125;
          }
          

          這段代碼改變字體粗細為550,還有寬窄為125。在未來可能可以使用以下屬性來得到同樣的效果:

          p {
           font-family: "VennVF";
           font-weight: 550;
           font-stretch: 125%;
          }
          

          如下所示是一個例子:

          h1 {
            font-family: 'Inter Variable', sans-serif;
            font-variation-settings: 
              "wght" 700, 
              "ital" 1, 
              "opsz" 48;
          }
          

          在這個例子中,我們將可變字體‘Inter’設置為700字重、1傾斜度和48像素字號的標題字體。可以看到,通過font-variation-settings屬性,我們可以方便地控制自定義字體的不同軸,實現更加細膩、靈活的排版效果。

          首圖實現代碼

          首圖的字體有如同呼吸,飄逸的感覺,核心是基于可變字體改變字體的粗細,并給不同的字符增加不同的延遲動畫效果即可達到最終的效果。

          • 改變字體粗細animation動畫
          @keyframes change {
            0% {
              font-variation-settings: "wght" 900, "ital" 1;
            }
          
            50% {
              font-variation-settings: "wght" 100, "ital" 0;
            }
          
            100% {
              font-variation-settings: "wght" 900, "ital" 1;
            }
          }
          
          • animation動畫執行相關參數
            animation-duration: 3s;
            animation-iteration-count: infinite;
            animation-name: change;
            transition-timing-function: ease-in-out;
          
          • 這里實現的每一個文字都是一個標簽,所以給每一個文字都增加了不同的延遲執行動畫時間
            @for $line from 1 through 4 {
              @for $letter from 1 through 10 {
                &:nth-child(#{$line}) span:nth-child(#{$letter}) {
                  animation-delay: #{$letter * 0.1s + $line * 0.2s};
                }
              }
            }
          

          代碼并不多,但實現的效果很不錯,基于可變字體設計,我們可以實現更加智能、美觀、易讀的排版效果,讓文字內容更加生動、豐富。

          在線效果預覽:https://code.juejin.cn/pen/7234826432050888765

          使用案例

          以下是一些看到的案例效果,供大家參考。

          國內常用的中文字體思源黑體也支持可變字體。

          這個Google動畫和本文頭圖的效果類似,給不同的字符加了不同的延遲加粗字體動畫。

          這個效果通過改變不同單詞的可變字體的字重和寬窄呈現出一種不一樣的效果。

          以下的幾個效果圖都來源于v-fonts.com,諸如此類的效果還有很多,總共可變字體有三百多個,大家有興趣的可以去找找看。

          通過改變animation值可以讓小圖標動起來,是不是打開了很多新的思路。

          這個字體比較有特色,大寫字母是在上方有一根長長的線,小寫字母是在下方有一根線,通過調整tracking軸的數值可以改變橫線的長度。

          這個字體就是一條波浪線,通過調整Width軸可以改變波浪的大小和幅度,都可以基于這個可變字體做水波紋效果了。

          最后

          關于可變字體的詳細介紹使用大家可以看這篇文章 「variable fonts - 更小更靈活的字體」。可變字體的設計讓文字內容更加生動、豐富,有興趣的朋友可以試試看~

          看完本文如果覺得有用,記得點個贊支持,收藏起來說不定哪天就用上啦~

          「專注前端開發,分享前端相關技術干貨,公眾號:南城大前端(ID: nanchengfe)」

          參考

          variable fonts - 更小更靈活的字體:github.com/FoxDaxian/memory/issues/4

          Variable Font Animation: codepen.io/typeforward/pen/abRpoxV

          TMl 的標簽可以分為單個標簽和成對標簽。

          單個標簽:html4 規定單個標簽要有一個 / 表示結尾, html5 則不用

          <!--單個標簽-->
          <meta>
          <!--成對標簽 -->
          <div></div>

          以下是HTMl中常用的一些標簽


          div 標簽

          div 標簽 主要用來將相關的內容組合到一塊,就像菜市場把各個蔬菜分成不同種類區分擺放是一個道理。

          div 是最常見也是比較重要的標簽,網頁布局中經常使用的一類標簽。通常布局被稱為 DIV + CSS 布局

          <div>
            div 就是一個分類的存儲箱子
          </div>


          p標簽

          p標簽表示段落, 在網頁文字中應用的比較多

          <!--段落和段落間會換行-->
          <p>第一段</p>
          <p>第二段</p>


          H-標題標簽

          h標簽分為六個

          標簽

          語義

          h1

          一級標題

          h2

          二級標題

          h3

          三級標題

          h4

          四級標題

          h5

          五級標題

          h6

          六級標題

          引用標題標簽后,字體會加粗、字號一會變大


          ul 無序標簽

          無序標簽是沒有顯示順序的列表,無序列表前面通常會有一個“小點”, 這個小點可以用type屬性控制。其中有三個展示方式(不過這種方式比較固定,不夠靈活和美觀, 已經被CSS的效果代替),如下:

          值(type屬性)

          描述

          disc

          默認值,實心圓

          circle

          空心圓

          square

          實心方框

          舉例:

          <!--ul標簽內部只能放置li標簽-->
          <!--li標簽內部可以放其他的標簽-->
          <ul type=">
              <li>無序列表元素1</li> <!--列表項-->
              <li>無序列表元素2</li>
          </ul>
          
          
          
          
          實心圓
          <ul type="disc">
            <li>西紅柿</li>
            <li>黃瓜</li>
          </ul>
          空心圓
          <ul type="circle">
            <li>西紅柿</li>
            <li>黃瓜</li>
          </ul>
          實心方框
          <ul type="square">
            <li>西紅柿</li>
            <li>黃瓜</li>
          </ul>


          ol 有序標簽

          • ol 前面的標簽是有序的,可以是數字、字母、羅馬數字等。同樣控制這些樣式使用的是type屬性。

          type屬性值

          意義

          a

          小寫英文字母編號

          A

          大寫英文字母編號

          i

          小寫羅馬數字編號

          I

          大寫羅馬數字編號

          1

          數字編號(默認)

          • 設置start屬性,表示從哪個編號開始
          • 加 reversed 表示倒敘排列


          有序列表, 從2開始
          <ol start="2">
            <li>元素1</li>
            <li>元素2</li>
          </ol>
          
          
          小寫字母表示
          <ol type="a">
            <li>元素1</li>
            <li>元素2</li>
            <li>元素3</li>
          </ol>
          
          
          倒敘
          <ol reversed>
            <li>元素1</li>
            <li>元素2</li>
            <li>元素3</li>
          </ol>


          dl 自定義列表

          dl標簽表示自定義列表

          dt表示數據項,dd表示數據定義, dd是dt標簽的解釋


          <dl>
              <dt>西紅柿</dt>
              <dd>紅、酸</dd>
              <dt>黃瓜</dt>
              <dd>綠、澀</dd>
            </dl>


          img標簽

          img 用來插入圖片,包括但不限于以下圖片格式

          圖片格式

          備注

          .jpg、.jpeg

          通常用于照片,是一種有損壓縮格式

          .png

          通常用于logo、背景,支持透明和半透明。便攜式網絡圖像

          .svg

          矢量圖片


          <!-- src(source)屬性, 圖片地址,可以為相對路徑,也可以為絕對路徑-->
          <!-- alt 如果遇到圖片無法加載的情況,網頁上會展示 alt的 值 -->
          <!-- width 和 height 表示 寬和高, 如果只設置一個, 那么另外一個就會跟著成比例縮放-->
          <img src="./images/images.jpg" alt="星期一" width="120" height="20">


          a 標簽

          用a標簽來制作超級鏈接

          <!-- href 屬性 表示 其他頁面的鏈接,支持相對路徑和絕對路徑,還可以鏈接到其它網站 -->
          <!--target 屬性表示 打開其他鏈接的方式-->
          <!-- title 屬性表示 鏈接的標題, 當鼠標移動到鏈接上,會展示出來-->
          <a href="http://www.baidu.com" target="blank" title="文字標題">百度</a>
          
          
          
          
          
          
          <!--也可以用a標簽作為錨點 錨點可以是本頁面的錨點,也可以是其他頁面的錨點-->
          <h1 id="title">頭部標題</h1>
          ... 此處省略一些代碼
          <a href="#title">返回標題</a>
          
          
          
          
          <!--下載鏈接,指向 doc, zip, zip等文件格式時,a標簽將成為自動下載鏈接-->
          <a href="./download/halou.zip">發郵件</a>
          <!-- mailto:前綴的鏈接是郵件鏈接,系統將自動打開email相關軟件-->
          <a href="mailto:halouworld@126.com">發郵件</a>
          <!-- tel: 前綴鏈接是電話鏈接,系統將自動打開撥號鍵-->
          <a href="tel:11111111111">打開撥號鍵盤</a>


          audio標簽

          audio標簽用來插入音頻標簽

          <!--添加 controls 后才會顯示 播放控件-->
          <!--常用音頻格式 mp3 和 ogg格式-->
          <!--autoplay 自動播放屬性-->
          <!--loop 屬性表示循環播放-->
          <audio controls src="./video/demo.mp3">
                 您的瀏覽器不支持 audio標簽,請升級
          </audio>
          
          
          
          
          <audio controls src="./video/demo.mp3" autoplay loop>
               您的瀏覽器不支持 audio標簽,請升級
          </audio>

          video標簽

          video 標簽用于插入一段視頻

          <!--有的視頻不能播放 ,詳見 https://blog.csdn.net/weixin_34272308/article/details/94614657 -->
          <!-- controls 顯示視頻播放控件  -->
          <!-- autoplay 自動播放 -->
          <!-- loop 循環播放 -->
          <!-- 常見的 視頻格式 mp4 ogv webm 等-->
          <video controls autoplay loop src="./video/5-4 RDB2.mp4" >
              您的瀏覽器不支持 video標簽,請升級
          </video>


          其它區塊標簽

          以前的區塊標簽只有div,現在為了更好的方便搜索引擎抓取網站,因此有了以下語義更加明確的區塊標簽

          <section>

          文檔的區域,比div語義上還要大一點

          <header>

          頁頭

          <main>

          網頁核心部分

          <footer>

          頁腳


          其他的語義標簽

          • span 標記文本標記區域,沒有特殊效果,結合CSS使用
          • b 標簽 加粗文章(可以使用CSS實現同樣效果)
          • u 加下換線文字
          • br 換行
          • i 傾斜文字(可以使用CSS實現同樣效果)
          • strong 代表特別重要的文字
          • em 需要強調的文字,有一定的傾斜,也可以用其配置CSS做表情文字
          • mark 高亮文字
          • figure 和 figcaption 。figure - 一段獨立的內容 figcaption- figure 內部元素的說明性內容


          表單

          表單用來收集信息并且可以完成和后端的數據傳輸

          表單中大致可以分為三種標簽

          • form標簽,標識表單區域, 內部的元素都可能被表單提取信息
          • input 標簽, 標識輸入、點擊等需要和用戶交互的場景
          • datalist 下拉框,支持搜索,通常和input一塊使用

          一些表單的示例

          <!--action 表示要提交到后端的網址-->
          <!--method 表示表單提交的方式,通常有 get 、 post 、put、delete等-->
          
          
          <form action="/save" meththo="post"></form>
          
          
          <!--<form> 標簽中 input 文本框 type="text" 表示文本框-->
          <!-- value 表示文本框中的值 -->
          <!--planceholder表示提示文字,在沒任何輸入值的情況下,作為提示信息-->
          <!--disabled 表示禁用-->
          <input type="text" value="123" planceholder="提示文字" disabled>
          
          
          <!---單選按鈕,name相等,表示選擇了一個,另一個就不能選擇了-->
          <!--checked 表示默認被選中-->
          <!-- value 屬性表示要提交到后端服務器的值-->
          <input type="radio" name="radio_group" checked>
          <input type="radio"  name="radio_group">
          
          
          
          
          <label>
              <input type="radio" name="sex"> 男
          </label>
          <label> 
              <input type="radio" name="sex"> 女
          </label>
          
          
          
          
          <!--html4 中的標簽 通過for 屬性 和 其他標簽的id屬性進行綁定-->
          
          
          <input type="radio" name="sex" id="nan"> 
          <label for="nan">男</label>
          
          
          <input type="radio" name="sex"   id="nv">
          <label for="nv">女</label>
          
          
          <!--復選框 type="checkbox" 同一組的的復選框,name值應該相同 ,復選框也有value值, 用于向服務器提交數據-->
          <input type="checkbox" name="hobby" value="soccer" > 足球
          <input type="checkbox" name="hobby" value="basket" > 籃球
          
          
          <!--密碼框-->
          <input type="password" placeholder="請輸入密碼">
          
          
          <!-- 下拉菜單 -->
          <select>
            <option value="alipay">支付寶</option>
            <option value="wxpay">微信支付</option>
          </select>
          
          
          <!--多文本框 rows 和  clos 分別用于設置 行數 和 列數-->
          <textarea rows="3" cols="5"></textarea>
          
          
          <!--三種按鈕 submit 提交按鈕  button 普通按鈕 可以簡寫為  <button></button> reset 按鈕 重置按鈕-->
          <input type="button" value="普通按鈕">
              <input type="reset" value="重置按鈕"> 
              <input type="submit" value="提交表單">
          
          
          
          
          <!--像 email 和 url 等格式,如果點擊提交按鈕,不符合格式,會有提示-->
          <form>
              日期空間: <input type="date">  <br/>
              時間空間: <input type="time">  <br/>
              日期時間空間 <input type="datetime-local">  <br/>
          
          
              文件:<input type="file"> <br/>  <br/>
              數字控件: <input type="number"> <br/>
              拖拽條: <input type="range"> <br/>
              搜索框: <input type="search"> <br/>
              網址控件: <input type="url"> <br/>
              郵箱控件: <input type="email" >
              <input type="submit" value="提交">
          </form>
          
          
          
          
          <!-- datalist 備選項示例 -->
          <input type="text" list="province">
          <datalist id="province">
            <option value="陜西"></option>
            <option value="山西"></option>
            <option value="河北"></option>
            <option value="山東"></option>
          </datalist>


          表格

          可以用html渲染表格

          • table 標簽表示表格
          • tr 表示行
          • td 表示單元格
          • caption 表格的標題,通常放在表格的第一行
          • th 表示列標題


          <!--表格示例-->
          <table border="1">
            <caption>我是標題</caption>
            <tr>
                <th>第一列標題</th>
                <th>第二列標題</th>
            </tr>
            <tr>
                <td>第一行第一列</td>
                <td>第一行第二列</td>
            </tr>
            <tr>
                <td>第二行第一列</td>
                <td>第二行第二列</td>
            </tr>
          </table>


          • 單元格的合并, clospan 用來設置td 或者th的列跨度 , rowspan屬性用來設置td或者th的行跨度
          <!--跨列示例-->
          <table border="1">
              <caption>我是標題</caption>
              <tr>
                  <th>第一列標題</th>
                  <th>第二列標題</th>
              </tr>
              <tr>
                  <td colspan="2">跨兩行</td>
              </tr>
              <tr>
                  <td>第二行第一列</td>
                  <td>第二行第二列</td>
              </tr>
          </table>
          
          
          <!--跨行示例-->
          <table border="1">
                  <caption>我是標題</caption>
                  <tr>
                      <th>第一列標題</th>
                      <th>第二列標題</th>
                  </tr>
                  <tr>
                      <td rowspan="2">第一行第一列</td>
                      <td>第一行第二列</td>
                  </tr>
                  <tr>
                      <td>第二行第二列</td>
                  </tr>
                  <tr>
                      <td>第三行第一列</td>
                      <td>第三行第二列</td>
                  </tr>
            </table>


          • 表格的其他標簽 , thead 定義表頭, tbody 定義表格的主題內容, tfoot 標簽定義表格底部,通常用來匯總等

          主站蜘蛛池模板: 日韩一区精品视频一区二区| 亚洲一区二区三区无码影院| 91精品国产一区二区三区左线 | 天天躁日日躁狠狠躁一区| 狠狠色婷婷久久一区二区| 一区二区福利视频| 精品综合一区二区三区| 一区二区三区福利视频免费观看| 日韩一区二区三区在线观看| 日韩一区二区三区视频| 亚洲午夜一区二区电影院| 精品一区二区三区无码视频| 伊人久久精品无码av一区| 国产精品无码一区二区三区在| 国产激情з∠视频一区二区 | 久久99精品免费一区二区| 91精品一区二区三区在线观看| 国产精品亚洲一区二区麻豆| 国产高清不卡一区二区| 成人国产精品一区二区网站公司| 视频一区在线免费观看| 久久精品道一区二区三区| 亚洲毛片αv无线播放一区| 国产一区二区免费在线| 国产伦精品一区三区视频| 国产丝袜一区二区三区在线观看| 精品深夜AV无码一区二区老年| 国产激情一区二区三区四区| 无码人妻一区二区三区免费手机| 无码视频一区二区三区| 无码视频免费一区二三区| 国产A∨国片精品一区二区| 精品一区二区ww| 久久久精品日本一区二区三区| 性无码免费一区二区三区在线 | 日韩精品一区二区三区老鸦窝| 日本高清不卡一区| 熟女大屁股白浆一区二区| 黄桃AV无码免费一区二区三区 | 精品国产一区二区三区免费| 精品福利一区二区三区|