Функция clamp
clamp функциясы үш параметрді қабылдайды: минималды мән, қалаған мән және максималды мән.
Ол мыналарды қайтарады:
- егер қалаған мән минималдыдан кіші болса, минималды мәнді
- егер қалаған мән максималдыдан үлкен болса, максималды мәнді
- егер қалаған мән минималды мен максималды арасында болса, қалаған мәнді
Синтаксис
селектор {
қасиет: clamp(min, pref, max);
}
Мысал . Блок өлшемін шектеу
Келесі мысалда блоктың қалаған
өлшемі экран енінің 30% болады.
Бірақ ол 100px-тен кіші және 300px-тен үлкен бола алмайды:
<div id="con1"></div>
<div id="targ"></div>
<div id="con2"></div>
#targ {
width: clamp(100px, 30%, 300px);
height: 100px;
border: 1px solid red;
margin: 30px auto;
}
#con1 {
width: 100px;
height: 100px;
border: 1px solid black;
margin: 30px auto;
}
#con2 {
width: 300px;
height: 100px;
border: 1px solid black;
margin: 30px auto;
}
:
Мысал . Бейімді фонт өлшемі
Келесі мысалда фонттың қалаған
өлшемі 4vw болады.
Бірақ ол 16px-тен кіші және 32px-тен үлкен бола алмайды:
<p id="con1">
responsive text example
</p>
<p id="elem">
responsive text example
</p>
<p id="con2">
responsive text example
</p>
#elem {
font-size: clamp(16px, 4vw, 32px);
color: red;
}
#con1 {
font-size: 16px;
}
#con2 {
font-size: 32px;
}
:
Мысал . Бейімді бұрышты дөңгелектеу радиусы
Келесі мысалда бұрышты дөңгелектеудің қалаған
радиусы 3vw болады.
Бірақ ол 5px-тен кіші және 20px-тен үлкен бола алмайды:
<div id="con1"></div>
<div id="elem"></div>
<div id="con2"></div>
div {
width: 100px;
height: 100px;
margin: 20px auto;
background: lightblue;
}
#elem {
border-radius: clamp(5px, 3vw, 20px);
background: #efafc6;
}
#con1 {
border-radius: 5px;
}
#con2 {
border-radius: 20px;
}
: