- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在 Microsoft Edge 上遇到倾斜和/或缩放转换属性问题。这些转换在 IE、Chrome 和 FF 上完美运行,但在 Edge 上运行不佳。
这是一个屏幕截图,可以让您直观地看到: 如您所见,左右元素已经倾斜。它们还有一个覆盖每个元素的链接,悬停效果是使用 jQuery 激活的。
在 Edge 中,当您将鼠标悬停在元素上时,倾斜会发生变化,即使我不希望它发生变化。无论是否悬停,它都应该保持相同的度数。奇怪的是它并没有完全消除我设置的倾斜度,它只是改变了几度左右。我实际上不能说。
我确实有适当的前缀,我更改了什么似乎并不重要它仍然无法正常工作。
这是问题的演示: https://codepen.io/anon/pen/BGBeab
$(".split-biz").hover(function() {
$(this).toggleClass("active");
$(this).find(".image").toggleClass("hover");
$(this).parent().find(".left").toggleClass("hover");
});
$(".split-life").hover(function() {
$(this).toggleClass("active");
$(this).find(".image").toggleClass("hover");
$(this).parent().find(".right").toggleClass("hover");
});
$(".text .left").hover(function() {
$(this).parents(".split-container").find(".split-biz .image").toggleClass("hover");
$(this).toggleClass("hover");
});
$(".text .right").hover(function() {
$(this).parents(".split-container").find(".split-life .image").toggleClass("hover");
$(this).toggleClass("hover");
});
.split-container {
overflow: hidden;
position: relative;
width: 100%;
height: 100%;
}
.split-container:after {
content: '';
position: absolute;
left: -webkit-calc(50% - 5px);
left: -moz-calc(50% - 5px);
left: calc(50% - 5px);
right: 0;
top: 0;
bottom: 0;
width: 10px;
height: 100%;
background: rgb(237, 28, 36);
z-index: 2;
-webkit-transform: scale(1.0) skew(-35.8deg);
-moz-transform: scale(1.0) skew(-35.8deg);
-ms-transform: scale(1.0) skew(-35.8deg);
-o-transform: scale(1.0) skew(-35.8deg);
transform: scale(1.0) skew(-35.8deg);
}
.split-biz {
position: relative;
left: 0;
top: 0;
bottom: 0;
width: 66.5625VW;
height: 35.270833vw;
-webkit-transition: all .2s;
-o-transition: all .2s;
-moz-transition: all .2s;
transition: all .2s;
}
.split-life {
position: absolute;
right: -17.05vw;
top: 0;
bottom: 0;
width: 66.5625VW;
height: 35.270833vw;
-webkit-transition: all .2s;
-o-transition: all .2s;
-moz-transition: all .2s;
transition: all .2s;
}
.split-biz .img-wrapper {
height: 34.270833vw;
margin: 0 0 0 -15.94vw;
-webkit-transform: scale(1.0) skew(-35.8deg);
-ms-transform: scale(1.0) skew(-35.8deg);
-moz-transform: scale(1.0) skew(-35.8deg);
-o-transform: scale(1.0) skew(-35.8deg);
transform: scale(1.0) skew(-35.8deg);
overflow: hidden;
position: relative;
z-index: 1;
-webkit-transition: all .2s;
-o-transition: all .2s;
-moz-transition: all .2s;
transition: all .2s;
}
.split-life .img-wrapper {
height: 35.270833vw;
margin: 0 0 0 3px;
-webkit-transform: scale(1.0) skew(-35.8deg);
-ms-transform: scale(1.0) skew(-35.8deg);
-moz-transform: scale(1.0) skew(-35.8deg);
-o-transform: scale(1.0) skew(-35.8deg);
transform: scale(1.0) skew(-35.8deg);
overflow: hidden;
position: relative;
z-index: 1;
-webkit-transition: all .2s;
-o-transition: all .2s;
-moz-transition: all .2s;
transition: all .2s;
}
.split-biz .image {
background: url(http://nnrda.wpengine.com/wp-content/uploads/2018/10/services-business.jpg);
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
background-position: center;
position: absolute;
top: 0vw;
left: 0;
right: 0;
bottom: 0vw;
-webkit-transform: scale(1.0) skew(35.8deg);
-ms-transform: scale(1.0) skew(35.8deg);
-moz-transform: scale(1.0) skew(35.8deg);
-o-transform: scale(1.0) skew(35.8deg);
transform: scale(1.0) skew(35.8deg);
-webkit-transition: all .5s;
-o-transition: all .5s;
-moz-transition: all .5s;
transition: all .5s;
}
.split-life .image {
background: url(http://nnrda.wpengine.com/wp-content/uploads/2018/10/services-lifestyle.jpg);
-webkit-background-size: cover;
-moz-background-size: cover;
-o-background-size: cover;
background-size: cover;
background-position: center;
position: absolute;
top: 0;
left: -12.95vw;
right: 0;
bottom: 0;
-webkit-transform: scale(1.0) skew(35.8deg);
-ms-transform: scale(1.0) skew(35.8deg);
-moz-transform: scale(1.0) skew(35.8deg);
-o-transform: scale(1.0) skew(35.8deg);
transform: scale(1.0) skew(35.8deg);
-webkit-transition: all .5s;
-o-transition: all .5s;
-moz-transition: all .5s;
transition: all .5s;
}
.split-container .image.hover {
-webkit-transform: scale(1.05) skew(35.8deg);
-moz-transform: scale(1.05) skew(35.8deg);
-ms-transform: scale(1.05) skew(35.8deg);
-o-transform: scale(1.05) skew(35.8deg);
transform: scale(1.05) skew(35.8deg);
}
.split-container .text div.hover {
background: #ed1c24;
}
.text {
z-index: 1;
font-size: 28px;
width: 100%;
position: absolute;
top: 40.5%;
/* bottom: 0;
*/
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: -moz-box;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
-moz-box-align: center;
align-items: center;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
-moz-box-pack: center;
justify-content: center;
text-align: center;
z-index: 3;
}
.text .left,
.text .right {
background: rgba(237, 28, 36, .75);
line-height: 1;
color: #fff;
-webkit-transform: scale(1.0) skew(-36.2deg, 0);
-ms-transform: scale(1.0) skew(-36.2deg, 0);
-moz-transform: scale(1.0) skew(-36.2deg, 0);
-o-transform: scale(1.0) skew(-36.2deg, 0);
transform: scale(1.0) skew(-36.2deg, 0);
-webkit-transition: all .2s;
-o-transition: all .2s;
-moz-transition: all .2s;
transition: all .2s;
display: -webkit-box;
display: -webkit-flex;
display: -moz-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-webkit-align-items: center;
-moz-box-align: center;
-ms-flex-align: center;
align-items: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-moz-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
.text .left {
left: 0;
padding: 1.5vw 3vw;
position: relative;
}
.text .right {
padding: 1.5vw 3vw;
position: relative;
left: 0;
}
.text a {
-webkit-transform: scale(1.0) skew(36.2deg, 0);
-moz-transform: scale(1.0) skew(36.2deg, 0);
-ms-transform: scale(1.0) skew(36.2deg, 0);
-o-transform: scale(1.0) skew(36.2deg, 0);
transform: scale(1.0) skew(36.2deg, 0);
display: inline-block;
color: #fff;
font-weight: 500;
font-size: 2.75vw;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="split-container">
<div class="split-biz">
<a href="#">
<div class="img-wrapper">
<div class="image"></div>
</div>
</a>
</div>
<div class="split-life">
<a href="#">
<div class="img-wrapper">
<div class="image"></div>
</div>
</a>
</div>
<div class="text">
<div class="left"><a href="#">For Your Business</a></div>
<div class="right"><a href="#">For Your Lifestyle</a></div>
</div>
</div>
最佳答案
我在 Edge (Microsoft Edge 42.17134.1.0) 上试过了,我也遇到了一些奇怪的事情。看起来 Edge 在为您从悬停中获得的那些嵌套变换设置动画时遇到了问题。
这里有一些可以绕过它的东西。不是在悬停时更新内部倾斜 (.image),而是更新外部倾斜 (.img-wrapper)。我完全摆脱了 [.split-container .image.hover] CSS 条目。这是新悬停变换的相关 CSS。
.split-container .split-biz .img-wrapper.hover {
transform: scale(1.05) skew(-35.8deg);
}
.split-container .split-life .img-wrapper.hover {
transform: translate(-50%) scale(1.05) skew(-35.8deg) translate(50%);
}
请注意,对于 .split-life,由于它偏移了 50%,因此必须对其进行平移,以便其缩放和倾斜基于中心,然后再平移回来。如果我们不这样做,比例尺会导致图像在红色分界线上的排列不正确。
这是一个基于您的原始代码的更新代码笔。
关于javascript - CSS Transform Skew 和 Scale 在 Microsoft Edge 中无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53123117/
我正在尝试在 View 中同时使用 scalegesture 监听器和 gesturelistener。如果比例为 1,则一切正常,但如果将比例设置为其他值,图像会跳到一个新位置,然后平滑缩放。 我的
我在使用 Canvas 和 canvas.scale(Scale, Scale) 时遇到图像质量问题;它们看起来完全像下面这样: android:运行时调整大小的图像质量 我相信我已经阅读了所有关于调
我有一个使用 svg 过滤器附加阴影的 svg 图形。我需要缩放阴影,但找不到可以执行此操作的过滤器。有谁知道这是否可能?
我正在构建一个逻辑回归分类器。 我从一组 500.000 条记录开始,我只想使用其中的一个样本。 你有什么建议: 1) 缩放总体然后采样2)缩放样本3) 仅缩放样本的 X_TRAIN 分割? 为什么?
我有一个功能,我用它在鼠标进入时放大图片并在鼠标离开时返回到正常大小。问题是,如果我在允许图片返回正常大小之前快速将鼠标移出然后将鼠标移入,那么图片将从鼠标输入时当前的任何大小放大(x2.7) (并且
可以在 scale-y-2 中使用 zoomtovalues 吗?我在多个 y 轴上有几个系列,我想将每个 scale-y-n 缩放到特定值,但我不知道如何... 谢谢和问候, 最佳答案 我们在最近的
我正在尝试在 Android 中创建(我认为是)一个相对简单的动画。也就是说,我想让某个 TextView 在单击按钮时缩小到 0 并返回到 1。当我单击该按钮时实际发生的是 TextView 立即缩
我有一个元素需要缩放到父元素的 100%。因为该元素包含基于像素的动画和可以缩放的图像,所以我不能使用百分比。有没有办法使用 css transform scale 来做到这一点? 最佳答案 相对 c
我在 ChartJS 中遇到一个奇怪的错误并且不知道如何修复它,由于这个错误我无法更改比例的任何内容。 我的代码(Sensor.tsx): import { useParams } from "sol
我有一些数据,我正试图通过不断增加的分母来准确和精确地处理这些数据。 请假设分子总是有小数。 我在 docs 中看到divide(BigDecimal divisor) 实际上会减小比例,这看起来很奇
喂, https://jsfiddle.net/jbwq6y87/7/ #box { width: 500px; height: 500px; transition: 0.5s; ov
几个 Tk 小部件也存在于 Ttk 版本中。通常它们具有相同的一般行为,但使用“样式”和“主题”而不是每个实例的外观属性(例如 bg 等)。这很好,因为 Ttk 小部件默认采用操作系统窗口管理器的“标
我尝试转换视频并使用 scale=-1:720 调整其大小,但出现错误“宽度不能被 2 整除”。我解决了这个问题:scale=-2:720。 之间有什么区别 scale=-1:720 和 scale=
我正在尝试重新创建此 codepen变换:我网站上特定页面的缩放转换,但它没有按预期工作 - 正如您在此代码片段中看到的那样(在整页上查看) - 图像覆盖/覆盖不足和不稳定而不是平滑。 /* Part
我有 3 个 Scale 小部件 scale1、scale2 和 scale3。我想使用 scale1 按以下方式控制 scale2 和 scale3 的值: 我不希望 scale2 和 scale3
我目前正在将我的数据分析从 R 转移到 Python。在 R 中缩放数据集时,我会使用 R.scale(),据我所知,它会执行以下操作:(x-mean(x))/sd(x) 为了替换该函数,我尝试使用
从文档中,定义为: 量化 ..a variant of linear scales with a discrete rather than continuous range. The input do
我有一个时基折线图,我正在尝试获取点击坐标处每个刻度的值。 我在 ChartJS 选项中指定的 onClick 函数: onClick: function(event, elementsAtEvent
我见过这样写的代码: ,但我也看到过这样写的代码: initial-scale=1 和 initial-scale=1.0 有区别吗? 最佳答案 没有。 specification描述视口(viewp
给定 y 轴 (s) 上的缩放和 x 轴 (t) 上的平移参数,当目的是最大化曲线叠加(而不是最小化距离)时,如何缩放和对齐两条不重合的曲线? 正如 @DWin 所指出的,这可能会被重新命名为“如何使
我是一名优秀的程序员,十分优秀!