标签: css-transforms

如何获得CSS旋转元素的实际(非原始)高度

我需要获得几个不同元素的实际高度(为了精确定制工具提示定位),并且这些元素中的一些(不是全部)被旋转.$(elem).outerHeight()返回原始高度,而不是实际显示的高度.

这是一个非常简单的例子:http://jsfiddle.net/NPC42/nhJHE/

我在这个答案中看到了一个可能的解决方案:https://stackoverflow.com/a/8446228/253974,但我仍然希望有一种更简单的方法.

javascript css jquery css-transforms

11
推荐指数
1
解决办法
2037
查看次数

CSS3 3D Transform在IE11上不起作用

我正在尝试用CSS3 3D Transform构建一个立方体..

在这个例子中,我只有两张脸:

<section id="header-cube-container">
    <div id="header-cube">
        <figure></figure>
        <figure></figure>
    </div>
</section>
Run Code Online (Sandbox Code Playgroud)

对于其他所有浏览器,我都获得了不错的结果,但IE 11很奇怪.

我有一个很好的3D平移并在绿色面上旋转(1),但红色面(2)垂直不显示在3D中.这只是红脸在绿脸上的投影.

Chrome和IE上的结果

你可以在这个小提琴上看到结果.

PS:我旋转100度而不是90度,看到红色面在绿色面上的投影(如果角度为90,投影不可见).

谢谢你们!

3d internet-explorer css3 css-transforms

11
推荐指数
1
解决办法
3万
查看次数

已修复的位置不适用于变换CSS属性

有没有办法保持"Hello"元素固定?因此,当用户向上或向下滚动时,hello元素不会从其位置移动.

这是一个例子:http://jsfiddle.net/VR5P8/

这是CSS:

#hello {
position: fixed;
border: 1px solid #000;
height: 100px;
width: 100px;
background-color: white;
}
Run Code Online (Sandbox Code Playgroud)

这是"Hello"元素的包装器的代码:

-webkit-transform: translate(394px, 0px);
Run Code Online (Sandbox Code Playgroud)

css css3 css-transforms

11
推荐指数
1
解决办法
2万
查看次数

translateZ()vs scale()中的CSS错误渲染

我注意到在以这两种方式转换文本时存在很大的质量差异:

.text1 {
  width: 200px;
  height: 22px;
  position: absolute;
  top: 40%;
  left: 0;
  transform-origin: 50% 50%;
  transform: scale(2); /* here */
  color: red;
  text-align: center;
  font-size: 22px;
}
.text2 {
  width: 200px;
  height: 22px;
  position: absolute;
  top: 60%;
  left: 0;
  transform-origin: 50% 50%;
  transform: translateZ(400px); /* here */
  text-align: center;
  font-size: 22px;
}
.perspective {
  width: 200px;
  height: 200px;
  perspective: 800px;
  transform-style: preserve-3d;
}
Run Code Online (Sandbox Code Playgroud)
<div class="perspective">
  <div class="text1">Text</div>
  <div class="text2">Text</div>
</div>
Run Code Online (Sandbox Code Playgroud)

在Z轴上移动文本时,有没有办法强制渲染更好的渲染?

css antialiasing css3 css-transforms

11
推荐指数
1
解决办法
1752
查看次数

CSS转换后单击

我的问题很简单,但我无法弄清楚它的来源.

我有一个按钮.当我点击它时,它会向左滑动,另一个按钮取代它,并带有CSS动画.
这是我的代码:

.form-anim-right-click {
  position: relative;
  overflow: hidden;
}
.form-anim-right-click > .form-group {
  width: 200%;
}
.form-anim-right-click > .form-group > .btn {
  width: 50%;
  display: inline-block;
  float: left;
  -o-transition: transform 0.3s ease-out;
  -webkit-transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
}
.form-anim-right-click > .form-group > .btn:focus {
  -o-transform: translate(-100%, 0);
  -webkit-transform: translate(-100%, 0);
  -ms-transform: translate(-100%, 0);
  transform: translate(-100%, 0);
}
.form-anim-right-click > .form-group > .btn:focus + .form-slide {
  -o-transform: translate(-100%, 0);
  -webkit-transform: translate(-100%, 0);
  -ms-transform: translate(-100%, 0);
  transform: translate(-100%, …
Run Code Online (Sandbox Code Playgroud)

html css transform animated css-transforms

11
推荐指数
1
解决办法
944
查看次数

过渡期间CSS转换的变化导致当前状态迷失并跳到开始(Chrome错误)

已在Google Chrome 73(正式版)(64位)中经过测试。

还在最新的稳定版Mozilla,Opera和Safari中进行了测试。

看来这只是Chrome的错误。希望有解决方法,直到Chrome小组修复该错误为止。

演示版

我创建了Codepen来显示问题。

const div = document.querySelector('div');

const cssTransition = 2500;
const states = [
  ['INITIAL', 'translate(0)', cssTransition / 2],
  ['A', 'translate(0, 100px)', cssTransition + 500],
  ['B', 'translate(100px, 100px)', cssTransition / 2],
];

let cursor = 0;

const animate = () => {
  cursor = (cursor + 1) % states.length;
  const [name, value, delay] = states[cursor];
  setTimeout(() => {
    div.innerText = name;
    div.style.transform = value;
    animate();
  }, delay);
};

animate();
Run Code Online (Sandbox Code Playgroud)
div {
  width: 100px; …
Run Code Online (Sandbox Code Playgroud)

javascript css animation css3 css-transforms

11
推荐指数
1
解决办法
272
查看次数

带有css3和ie8支持的弧形文本

我试图给带有css3属性的文本赋予弧形,并且还改变js以支持ie8.但这不起作用.

this.$letters.each(function (i) {
    var $letter = $(this),
        transformation = (_self.options.radius === -1) ? 'none' : 'translateX(' + $letter.data('x') + 'px) translateY(' + $letter.data('y') + 'px) rotate(' + $letter.data('a') + 'deg)',
        transition = (animation) ? 'all ' + (animation.speed || 0) + 'ms ' + (animation.easing || 'linear') : 'none';


    filterIE = 'M11=' + $letter.data('x') + ', M21=' + $letter.data('y') + ',rotation=' + $letter.data("a") + 'deg'; // js function for supporting ie8
    //alert(filterIE);
    $letter.css({
        '-webkit-transition': transition,
        '-moz-transition': transition,
        '-o-transition': transition, …
Run Code Online (Sandbox Code Playgroud)

jquery canvas css3 internet-explorer-8 css-transforms

10
推荐指数
1
解决办法
628
查看次数

css转换不适用于:: after,:: before元素的css生成内容

http://jsfiddle.net/chovy/enmxu/

<a href="#">Inbox</a>

a { text-decoration: none; }
a::after { content: ' ?'; transform: rotate(180deg); }
Run Code Online (Sandbox Code Playgroud)

根据这个网站,它已在Chrome 23中修复...但我有Chrome 28,它不起作用.

http://css-tricks.com/transitions-and-animations-on-css-generated-content/ http://trac.webkit.org/changeset/138632

css3 css-transforms

10
推荐指数
2
解决办法
7397
查看次数

控制CSS立方体旋转(变换)并从3d矩阵中提取值

我制作了CSS立方体,我正在使用上/下和左/右键旋转,但我在旋转方向上遇到了问题.

尝试#1

DEMO

使用本文,我设法绑定键并将旋转应用于多维数据集.我的第一个问题是CSS transform函数旋转元素轴,所以,即.我按下,Y轴和Z轴改变位置.我为这种情况调整了原始代码,但另一个问题是,因为轴是向量,当我按下2次X和Z回到位但矢量被反转(左键开始向右旋转立方体,反之亦然),所以现在我必须在相反的方向旋转立方体以获得所需的结果,我不知道如何检测轮轴是否倒置.

JavaScript的

var xAngle = 0,
    yAngle = 0,
    zAngle = 0,
    cube = $("#cube");

$(document).keydown(function(e) { //keyup maybe better?

  e.preventDefault();

  var key = e.which,
      arrow = {left: 37, up: 38, right: 39, down: 40},
      x = xAngle/90,
      y = yAngle/90;

    switch(key) {
      case arrow.left:
        if (x%2 == 0)
          yAngle -= 90;
        else
          zAngle += 90;
      break;
      case arrow.up:
        if (y%2 == 0)
          xAngle += 90;
        else
          zAngle -= 90;
      break;
      case arrow.right: …
Run Code Online (Sandbox Code Playgroud)

css 3d css3 css-transforms css-animations

10
推荐指数
1
解决办法
2493
查看次数

子级上的 CSS 缩放变换不影响父级大小

我有一个太大的组件,我想缩小它。我可以通过比例变换来做到这一点,但父容器不会缩小以适应。

在我的真实代码中,带有 SHRINK-ME 类的 div 实际上是一个 Angular 日历组件,但是这个简化的repo再现了相同的效果。我不能只缩放环绕父 div,因为我需要使用 Bootstrap 列网格类来容纳此示例中省略的对象。我在这里缺少一个简单的 CSS 属性吗?

.parent {
  background-color: green;
}

.parent .child-object {
  height: 10em;
  background-color: red;
}

.sibling {
  background-color: yellow;
}

.SHRINK-ME {
  transform: scale(.80) translate(-12.5%, -12.5%);
}
Run Code Online (Sandbox Code Playgroud)
<div class='row no-gutters'>
  <div class='parent col-vs-12 col-sm-6'>
    <div class='child-object SHRINK-ME'>CHILD</div>
  </div>
  <div class='sibling col-vs-12 col-sm-6'>SIBLING</div>
</div>
Run Code Online (Sandbox Code Playgroud)

我的代码有和没有转换:

.parent {
  background-color: green;
  width: 40%;
}

.parent .child-object {
  height: 10em;
  background-color: red;
}

.sibling {
  background-color: yellow;
}

.SHRINK-ME {
  transform: …
Run Code Online (Sandbox Code Playgroud)

css-transforms bootstrap-4

10
推荐指数
1
解决办法
5744
查看次数