公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

實現(xiàn)文字大小隨容器大小變化,除了 css 計算還有什么直接實現(xiàn)的屬性值?

admin
2023年8月25日 0:21 本文熱度 1285

到目前為止,除了使用 Javascript 之外,使用純 CSS 也是可以的。


Demo 地址:Just a moment...

上面錄屏的效果就是文字大小隨著容器的大小變化的。實現(xiàn)視頻中的效果使用的是 CSS 的新特性,容器查詢 ,并且使用了 CSS 新增的容器單位。


先來看如何實現(xiàn)的吧:


<div class="container">
    <div class="box">右下角拖動我,可以根據(jù)容器寬度改變字號</div>
</div>


關(guān)鍵的 CSS 代碼:


.container {container-type: inline-size;}
.box {font-size: 5cqw;}


CSS 容器查詢是什么,這里就不詳細闡述了,感興趣的話,你可以移步閱讀相關(guān)教程:



這里簡單說一下容器查詢單位。


容器查詢單位的工作原理和視窗單位,比如vwvhvminvmax等非常相似。不同的是,視窗單位是相對于瀏覽器視窗尺寸計算;容器查詢單位是相對于查詢?nèi)萜鞒叽缬嬎?/span>:


  • 1cqw 等于查詢?nèi)萜鲗挾龋?code style="user-select: text !important; background-color: rgb(246, 246, 246); border-radius: 3px; font-family: Menlo, Monaco, Consolas, "Andale Mono", "lucida console", "Courier New", monospace; font-size: 0.9em; margin: 0px 2px; padding: 3px 4px;">width)的 1%

  • 1cqh 等于查詢?nèi)萜鞲叨龋?code style="user-select: text !important; background-color: rgb(246, 246, 246); border-radius: 3px; font-family: Menlo, Monaco, Consolas, "Andale Mono", "lucida console", "Courier New", monospace; font-size: 0.9em; margin: 0px 2px; padding: 3px 4px;">height)的 1%

  • 1cqi 等于查詢?nèi)萜鲀?nèi)聯(lián)大小(inline-size)的 1%

  • 1cqb 等于查詢?nèi)萜?span style="user-select: text !important;">塊大小block-size)的 1%

  • 1cqmin 等于 1cqi 或 1cqb 中較小的一個值;

  • 1cqmax 等于 1cqi 或 1cqb 中較大的一個值。

容器查詢單位出現(xiàn)之后,可以幫助我們在處理組件內(nèi)元素樣式,比如 font-size、 padding 和 margin 等,節(jié)省很多的精力和時間。例如,我們可以使用容器查詢單位代替手動增加字體大小。


容器查詢單位還沒有的時候,我們一般會像下面這樣改寫卡片組件標(biāo)題的 font-size :

.card__title {
    font-size: 1rem;
}
/* 容器寬度大于 400px */
@container (width > 400px) {
    .card__title {
        font-size: 1.15rem;
    }
}
/* 容器寬度大于 600px */
@container (width > 600px) {
    .card__title {
        font-size: 1.25rem;
    }
}
/* 容器寬度大于 800px */
@container (width > 800px){
    .card__title {
        font-size: 2rem;
    }
}

有了容器查詢單位之后,同樣是給卡片組件標(biāo)題設(shè)置 font-size ,只需要一行代碼即可:

.card__title {
    font-size: clamp(1rem, 3cqw, 2rem);
}

當(dāng)然,我們也可以像前面課程中介紹 vw 設(shè)置 font-size 的方法一樣,使用容器查詢單位來給卡片組件標(biāo)題設(shè)置font-size

/* 視窗單位設(shè)置 font-size */
.card__title {
    font-size: clamp(1.2rem, 5vw + 1rem, 3rem);
}
/* 容器查詢單位設(shè)置 font-size */
.card__title {
    font-size: clamp(1.2rem, 5cqi + 1rem, 3rem);
}



注意,早期的容器查詢單位原型是 q* 而不是現(xiàn)在的 cq* ,所以可能會在早期的一些容器查詢單位的 Demo 中看到類似 qw 、qh 單位,而且很有可能不能正常運行。


就如上圖中所示,你還可以將 CSS 的比較函數(shù) clamp() 結(jié)合起來使用。讓你的字號可以有一個更好的設(shè)置。


.box {font-size: clamp(.8rem, 10cqw + .8rem, 2.5rem);}
00:09


Demo 地址:Just a moment...


將 clamp() 和容器查詢單位結(jié)合 在一起之后,.box 的 font-size 最小不會小于 0.8rem ,最大不會大于 2.5rem ,而且還可以隨著容器的尺寸動態(tài)調(diào)整 font-size 。


是不是很有意思。如果你從未接觸過 CSS 的比較函數(shù),可以移步閱讀:



該文章在 2023/8/25 0:21:35 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产成人综合久久精品推荐 | 国产一区二区无码视频 | 国产在线第一区二区三区可以下载 | 国产精品高清另类一区二区三区 | 国产免费无码秘一区二区三区 | 国产精品三级一区二区 | 91看片在线观看 | 观看影视少妇三级 | 99精品国产兔费观看久久 | 精品国内自产拍在线观看 | 国产精品va无码 | 国产毛片三级在线 | 二区三区特黄 | 成人精品综合久久久 | 高清精品亚洲日韩 | 国产超级乱婬aⅴ片 | 国产高清天天看在线 | 国产精品成人va在线观看 | 国产福利在线播放 | 国产精品熟女四五十路一区二区 | 国产精品喷潮在线观看 | 国产亚洲一区交换在线 | 国产午夜福利短视频在线观看 | 国产成人无码手机免费 | 成人一区二区三区四区五区六 | 97人妻无码免费视频一区 | 国产三级一区二区 | 国产福利姬喷水福利在线观看 | 国产精品vr无码专区 | 成人精品在线观看 | av免费网址在线观看 | 国产对白播放在线播放 | 国产人妖视频一区二区女 | 顶级嫩模啪啪呻吟不断好爽 | 99久久无码国产精品性出奶水 | 国产午夜影视大全免费观看 | 成人在线免费观看大全 | 国产精品免费麻豆入口 | 18禁成人网站免费观看 | 国产一区二区三区美女图片 | 国产午夜精品一区二区三区极品 |