一、CSS位移代碼
CSS中位移的主要屬性有:position、top、right、left、bottom。
.example {
position: relative;
top: 20px;
right: 10px;
bottom: 30px;
left: 40px;
}
上述代碼為例,表示將一個元素向上移動20像素,向右移動10像素,向下移動30像素,向左移動40像素。
二、CSS位移和定位
定位和位移是兩個相互作用的概念。元素的定位會影響到它的位移,相對定位、絕對定位、固定定位都會影響元素的位移。
相對定位的位移基於元素在文檔流中的位置,會對元素的上下左右進行移動,而不會對其它元素的布局產生影響。
絕對定位的位移是相對於離它最近的有定位屬性的父級元素進行計算的,如果沒有有定位屬性的父級元素,則相對於文檔進行計算。
固定定位的位移和絕對定位類似,但是它相對於瀏覽器窗口進行計算,不會隨滾動而改變位置。
三、水平垂直居中怎麼設置CSS
在網頁布局中,垂直水平居中是經常使用的效果。以下介紹幾種實現方式:
1. 垂直居中怎麼設置CSS
我們可以使用常見的方式,讓元素上下居中使用 margin 屬性。如果是絕對定位的元素,可以使用 top 和 bottom。
.container {
position: relative;
}
.container div {
position: absolute;
top: 50%;
transform: translateY(-50%);
}
2. CSS垂直居中的8種方法
除了使用上述方法,還有以下8種方式實現垂直居中:
方法一:使用flexbox布局
.container {
display: flex;
justify-content: center;
align-items: center;
}
方法二:使用grid布局
.container {
display: grid;
place-items: center;
}
方法三:使用 display:table-cell
.container {
display: table;
}
.container div {
display: table-cell;
vertical-align: middle;
}
方法四:使用 line-height
.container {
height: 200px;
line-height: 200px;
}
.container div {
display: inline-block;
vertical-align: middle;
}
方法五:使用偽元素和絕對定位
.container {
position: relative;
}
.container::before {
content: "";
display: inline-block;
height: 100%;
vertical-align: middle;
margin-right: -0.25em; /* 調整與後面的內容對齊 */
}
.container div {
position: absolute;
top: 50%;
transform: translateY(-50%);
}
方法六:使用偽元素和絕對定位
.container {
display: flex;
flex-direction: column;
justify-content: center;
}
.container div {
align-self: center;
}
方法七:使用偽元素和絕對定位
.container {
display: flex;
flex-direction: column;
justify-content: center;
}
.container div {
margin: auto;
}
方法八:使用 calc() 函數計算長度
.container {
height: 200px;
}
.container div {
height: calc(100% - 40px);
margin: 20px 0;
}
四、盒子垂直居中怎麼設置CSS
實現盒子(元素)的垂直居中,除了上述方法,我們還可以使用 transform 屬性,通過對元素進行旋轉來實現盒子的垂直居中。
.container {
position: relative;
}
.container div {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
五、CSS位移屬性
CSS中的位移屬性包括:
- position:指定元素的定位方式
- top: 從元素頂部到其包含塊的頂部距離
- right:從元素右側到其包含塊的右側距離
- bottom:從元素底部到其包含塊的底部距離
- left:從元素左側到其包含塊的左側距離
- transform:元素變形
六、CSS位移如何做一個線條消失出現
我們可以使用 transition 屬性控制狀態間的平滑過渡,實現線條消失和出現過程的動畫效果。
.line {
height: 2px;
background-color: #000;
position: relative;
overflow: hidden;
}
.line::before {
content: "";
height: 100%;
width: 200%;
background-color: #000;
position: absolute;
top: 0;
left: -100%;
transition: transform .5s ease-out;
}
.line:hover::before {
transform: translateX(100%);
}
七、CSS位移動態
CSS位移還可以用於實現動態效果,例如控制圖片或文字的移動速度和方向,或實現滑鼠的跟隨效果。
.container {
position: relative;
}
.container div {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
animation: moveDiv 5s linear infinite alternate;
}
@keyframes moveDiv {
from {
left: 0;
top: 0
}
to {
left: 100%;
top: 100%;
}
}
以上是CSS位移的詳細介紹,我們可以通過掌握不同的位移屬性和靈活運用,實現不同的效果和布局。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/253296.html
微信掃一掃
支付寶掃一掃