CSS3四個自適應關鍵字——fill-available、max-content、min-content、fit-content,css3fill-available

來源:互聯網
上載者:User

CSS3四個自適應關鍵字——fill-available、max-content、min-content、fit-content,css3fill-available
前面的話

  一般地,有兩種自適應:撐滿空閑空間與收縮到內容尺寸。CSS3將這兩種情況分別定義為'fill-availabel'和'fit-content'。除此之外 ,還新增了更細粒度的'min-content'和'max-content'。這四個關鍵字可用於設定寬高屬性。本文將詳細介紹CSS3中的這四個自適應關鍵字

  [注意]IE瀏覽器不支援,webkit核心瀏覽器需添加-webkit-首碼

 

fill-available

  width:fill-available表示撐滿可用空間

  舉例來說,頁面中一個<div>元素,該<div>元素的width表現就是fill-available自動填滿剩餘的空間

  出現fill-available關鍵字值的價值在於,可以讓元素的100%自動填滿特性不僅僅在block水平元素上,也可以應用在其他元素

  下面的例子中,inline-block元素寬度撐滿了可用寬度

<style>div{  background-color: pink;  display:inline-block;  width:-webkit-fill-available;}</style><div>小火柴的藍色理想</div>

  類似地,高度也有此特性

  下面的例子中,div元素高度撐滿了可用高度

<style>div.inner{  background-color: pink;  height:-webkit-fill-available;}</style><div style="height: 100px;">  <div class="inner">小火柴的藍色理想</div></div>

【等高布局】

  於是,利用fill-available可以輕鬆地實現等高布局

<style>.inner{  width:100px;  height:-webkit-fill-available;  margin:0 10px;  display: inline-block;  vertical-align: middle;  background-color: pink;}</style><div style="height: 100px;">  <div class="inner">HTML</div>  <div class="inner">CSS</div>  <div class="inner">JS<br>jQyery<br>Vue</div></div>

 

fit-content

  width:fit-content表示將元素寬度收縮為內容寬度

  下面是一個執行個體

<style>div{  background-color: pink;  width:-webkit-fit-content;}</style><div>小火柴的藍色理想</div>

【水平置中】

  width:fit-content可以實現元素收縮效果的同時,保持原本的block水平狀態,於是,就可以直接使用margin:auto實現元素向內自適應同時的置中效果了

<style>div{  background-color: pink;  width:-webkit-fit-content;  margin:auto;}</style><div>小火柴的藍色理想</div>

  類似地,高度也有此特性,但不常用

 

min-content

  width:min-content表示採用內部元素最小寬度值最大的那個元素的寬度作為最終容器的寬度

  首先,要明白這裡的“最小寬度值”是什麼意思。替換元素,例片的最小寬度值就是圖片呈現的寬度,對於文本元素,如果全部是中文,則最小寬度值就是一個中文的寬度值;如果包含英文,因為預設英文單詞不換行,所以,最小寬度可能就是裡面最長的英文單詞的寬度

<style>.outer{  width:-webkit-min-content;}</style><div class="outer">  <div style="height:10px;width:100px;background:lightgreen"></div>  <div style="background-color: pink;">小火柴的藍色理想</div></div>

 

max-content

  width:max-content表示採用內部元素寬度值最大的那個元素的寬度作為最終容器的寬度。如果出現文本,則相當於文本不換行

<style>.outer{  width:-webkit-max-content;  border:1px solid black;}</style><div class="outer">  <div style="height:10px;width:100px;background:lightgreen"></div>  <div style="background-color: pink;">小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想小火柴的藍色理想</div></div>

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.