css - 向其他方向扩展宽度

Gre*_*nih 17 html css

当我将它们悬停时,我有一些图标会扩展:

  .icon
  {
      width: 128px;
      height: 128px;
      background: url(icons.png) no-repeat;
      background-position: left top;
      -webkit-transition: width .2s;
  }
  .icon.icon1:hover
  {
      width: 270px;
      backgorund-position-x: -128px;
  }
Run Code Online (Sandbox Code Playgroud)

当我悬停一个图标时,它的宽度会发生变化,因此-webkit-transition会扩展图标.它的扩展方式是从左到右,这对.icon1和.icon2都有好处,但它应该与.icon3和.icon4相反(从右到左).

Sow*_*mya 21

使用position:absolute和设置right:0top:0

    .icon{
    width: 128px;
    height: 128px;
    background: url(icons.png) no-repeat red;
    background-position: left top;
    -webkit-transition: width .2s;
    position:absolute;
    top:0; right:0; 
}
.icon:hover{
    width:250px
}
Run Code Online (Sandbox Code Playgroud)

DEMO

  • 如果您可以将项目从页面流中取出,这是我所知道的最佳选择,但如果您想将项目保留在页面流中,那么此解决方案不起作用。我不知道有什么解决方案可以解决这个问题,是否存在? (2认同)
  • 有没有没有绝对位置的解决方案? (2认同)