技術(shù)頻道導(dǎo)航
HTML/CSS
.NET技術(shù)
IIS技術(shù)
PHP技術(shù)
Js/JQuery
Photoshop
Fireworks
服務(wù)器技術(shù)
操作系統(tǒng)
網(wǎng)站運(yùn)營(yíng)

贊助商

分類目錄

贊助商

最新文章

搜索

CSS隱藏元素的10種方法之:使用transform

作者:admin    時(shí)間:2022-10-31 20:9:31    瀏覽:

在前面文章介紹了我們可以通過(guò)使用color Alpha 透明度隱藏元素,本文將繼續(xù)介紹另一種CSS隱藏元素的方法:使用transform。

實(shí)例

CSS隱藏元素的10種方法之:使用transform 

demodownload

HTML

<ol class="hide" tabindex="0">
  <li>one</li>
  <li class="hide-item">two</li>
  <li>three</li>
</ol>

<p>鼠標(biāo)移到任何一個(gè)盒子上隱藏盒子two,<br>使用 <b>transform: scale(0);</b>。</p>

CSS

/* 隱藏元素 */
.hide:hover .hide-item,
.hide:focus .hide-item {
  transform: scale(0);
/*
  alternatively:
  transform: translate(-999px, 0);
*/
}

/* 其他樣式 */
body {
  font-family: sans-serif;
  font-size: 100%;
  color: #222;
  background-color: #fff;
}

p {
  text-align: center;
}

.hide {
  display: flex;
  justify-content: center;
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.hide > * {
  flex: 0 0 25%;
  font-size: 2em;
  text-align: center;
  padding: 1em 0;
  margin: 0.2em;
  background-color: #ccc;
  border-radius: 0.5em;
  user-select: none;
}

.hide-item {
  background-color: #f66;
  cursor: pointer;
}

transform提供出色的性能和硬件加速,因?yàn)樵乇挥行У匾苿?dòng)到單獨(dú)的層中,并且可以在 2D 或 3D 中進(jìn)行動(dòng)畫(huà)處理。原始布局空間保持原樣,但完全隱藏的元素不會(huì)觸發(fā)任何事件。

transform屬性可用于平移(移動(dòng))、縮放、旋轉(zhuǎn)或傾斜元素,使用scale(0) 或 translate(-999px, 0px) 屏幕外將隱藏元素。

度量標(biāo)準(zhǔn) 影響
瀏覽器支持 良好
可訪問(wèn)性 內(nèi)容仍可閱讀
布局受影響? 否 - 保留原始尺寸
渲染要求 組合
性能 最好,可以使用硬件加速
動(dòng)畫(huà)幀可能嗎?
隱藏時(shí)可觸發(fā)事件嗎?

相關(guān)文章

transform 屬性

CSS transform 屬性允許你旋轉(zhuǎn),縮放,傾斜或平移給定元素。這是通過(guò)修改 CSS 視覺(jué)格式化模型的坐標(biāo)空間來(lái)實(shí)現(xiàn)的。

警告: 只能轉(zhuǎn)換由盒模型定位的元素。根據(jù)經(jīng)驗(yàn),如果元素具有display: block,則由盒模型定位元素。

語(yǔ)法

/* Keyword values */
transform: none;

/* Function values */
transform: matrix(1.0, 2.0, 3.0, 4.0, 5.0, 6.0);
transform: translate(12px, 50%);
transform: translateX(2em);
transform: translateY(3in);
transform: scale(2, 0.5);
transform: scaleX(2);
transform: scaleY(0.5);
transform: rotate(0.5turn);
transform: skew(30deg, 20deg);
transform: skewX(30deg);
transform: skewY(1.07rad);
transform: matrix3d(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0, 10.0, 11.0, 12.0, 13.0, 14.0, 15.0, 16.0);
transform: translate3d(12px, 50%, 3em);
transform: translateZ(2px);
transform: scale3d(2.5, 1.2, 0.3);
transform: scaleZ(0.3);
transform: rotate3d(1, 2.0, 3.0, 10deg);
transform: rotateX(10deg);
transform: rotateY(10deg);
transform: rotateZ(10deg);
transform: perspective(17px);

/* Multiple function values */
transform: translateX(10px) rotate(10deg) translateY(5px);

/* Global values */
transform: inherit;
transform: initial;
transform: unset;

transform屬性可以指定為關(guān)鍵字值 none 或一個(gè)或多個(gè) <transform-function> 值。

<transform-function>

要應(yīng)用的一個(gè)或多個(gè) CSS 變換函數(shù)。變換函數(shù)按從左到右的順序相乘,這意味著復(fù)合變換按從右到左的順序有效地應(yīng)用。

none

不應(yīng)用任何變換。

瀏覽器兼容性

 

示例

HTML

<div>Transformed element</div>

CSS

div {
  border: solid red;
  transform: translate(30px, 20px) rotate(20deg);
  width: 140px;
  height: 60px;
}

結(jié)果

 

相關(guān)文章

標(biāo)簽: transform  css  CSS隱藏元素  
x
  • 站長(zhǎng)推薦
/* 左側(cè)顯示文章內(nèi)容目錄 */