成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

3 行 CSS 代碼實現日歷界面

開發 測試
日歷組件大家應該很熟悉了,但你想過如何實現日歷的界面布局嗎?最容易想到的方法是用 table布局,畢竟它在視覺上跟表格類似。

 

[[358245]]

日歷組件大家應該很熟悉了,但你想過如何實現日歷的界面布局嗎?最容易想到的方法是用 table布局,畢竟它在視覺上跟表格類似。但是從現代 CSS 的角度來說,table多用來展示列表數據,而不是用作布局方案。因為它需要很多額外的 DOM 元素,而且樣式控制上也不夠靈活。另一種方法是用 flex布局,這也算是 CSS3 給我們帶來的福利,讓界面布局工作簡化了許多。

本文打算介紹一種更簡單的方法,只需要 3 行核心 CSS 代碼即可實現日歷界面!你可能猜到了,它就是 Grid布局。

先看 HTML 部分:

  1. <div class="calendar-wrapper"
  2.   <h1>Decemeber</h1> 
  3.   <ul class="calendar"
  4.     <li class="weekday">一</li> 
  5.     <li class="weekday">二</li> 
  6.     <li class="weekday">三</li> 
  7.     <li class="weekday">四</li> 
  8.     <li class="weekday">五</li> 
  9.     <li class="weekday">六</li> 
  10.     <li class="weekday">日</li> 
  11.  
  12.     <li class="first-day">1</li> 
  13.     <li>2</li> 
  14.     <li>3</li> 
  15.     <!-- ... --> 
  16.     <li>29</li> 
  17.     <li>30</li> 
  18.     <li>31</li> 
  19.   </ul> 
  20. </div> 

為簡單起見,這里把一周七天和日期全都放進一個列表里了。CSS 代碼更簡單了:

  1. .calendar { 
  2.   display: grid; // 1 
  3.   grid-template-columns: repeat(7, 1fr);  // 2 
  4. .first-day { 
  5.   grid-column-start: 2; // 3 

稍微解釋下,第一行就是將列表聲明為grid容器。第二行的屬性 grid-template-columns用來設置每列的寬度。一周有 7 天,因此需要 7 列。也可以這樣寫:

  1. grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr; 

或者

  1. grid-template-columns: 40px 40px 40px 40px 40px 40px 40px; 

是不是顯得重復啰嗦?所以有了 repeat()簡寫方法,用于定義多個等寬的列就方便多了。這里的1fr 是新的 CSS 彈性長度單位,具體用法可以參考 [https://www.w3.org/TR/css3-grid-layout/#fr-unit]。

最后,由于大部分月份的 1 號并不是周一,所以要用grid-column-start屬性設置1號這個單元格的位置。

Bingo!一個極簡日歷就完成了!

極簡日歷

當然了,頭部的背景色還是需要額外代碼的,但這不是關鍵所在。想要了解更多關于強大的 CSS Grid 布局的知識,推薦參考 MDN 文檔 [https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout]

 本文轉載自微信公眾號「1024譯站」,可以通過以下二維碼關注。轉載本文請聯系1024譯站公眾號。

 

責任編輯:武曉燕 來源: 1024譯站
相關推薦

2013-04-08 14:07:28

CSS

2024-02-20 12:49:00

CSS函數前端

2025-05-16 11:44:43

CSS模式樣式

2024-11-29 10:58:54

CSS代碼黑模式

2015-05-27 07:44:34

日歷控件 jQueryCSS3

2013-04-10 09:28:24

CSS3CSS

2017-10-17 13:30:32

Python人臉識別

2022-03-26 22:28:06

加密通信Python

2022-04-09 09:11:33

Python

2018-01-23 09:17:22

Python人臉識別

2023-05-15 10:41:13

CSS深色模式

2012-04-10 10:49:45

WEBCSS

2014-06-19 10:02:32

Haskell代碼

2022-04-15 08:07:21

ReactDiff算法

2021-12-16 06:21:16

React組件前端

2020-08-19 10:30:25

代碼Python多線程

2021-09-09 05:57:57

JS模塊打包器前端

2022-02-08 12:30:30

React事件系統React事件系統

2021-09-09 06:55:43

Web剪輯視頻

2010-09-13 14:17:42

CSS縱向導航菜單
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91中文视频 | 国产精品无码久久久久 | 国产精品美女久久久久久免费 | 在线视频a| 亚洲精品乱码久久久久久黑人 | 色视频成人在线观看免 | 日韩精品一区二区三区中文在线 | 久产久精国产品 | 国产高清精品一区二区三区 | 欧美精品成人 | 中文字幕日韩在线 | 欧美一区在线视频 | www.99热这里只有精品 | 成人午夜激情 | 男人天堂久久久 | 欧美电影免费观看高清 | 97精品超碰一区二区三区 | 欧美a级网站 | 99免费精品视频 | 国产精品综合色区在线观看 | 中文在线a在线 | 高清欧美性猛交 | 野狼在线社区2017入口 | 日韩成人在线电影 | av日韩精品 | 国产aⅴ精品 | 国产一区二区三区视频 | 337p日本欧洲亚洲大胆精蜜臀 | 成人国产精品 | aaaaaa大片免费看最大的 | 免费在线观看成年人视频 | 91av在线视频观看 | 欧美影院久久 | a级毛片毛片免费观看久潮喷 | 精品欧美一区二区三区 | 日本五月婷婷 | 国产一区免费视频 | 午夜精品久久久久久 | 在线激情视频 | 久久久久久一区 | 精品一区二区三区四区 |