2017-01-24 5 views
1

Я использую Greensock TweenLite, и мне нужно анимировать границу для элемента DOM.Greensock TweenLite проблема при анимации границы свойство короткой руки

Как вы можете видеть, что внутренний стиль установлен: border: solid 0px yellow

и использование TweenLite я прохожу в качестве конечного результата

border: "solid 20px blue"

но анимация не выполняется.

Я хотел бы знать, поддерживаются ли сокращенное свойство и/или если существует работа.

var element = document.getElementById('target'); 
 

 
TweenLite.to(element, 2, { 
 
    border: "solid 20px blue" 
 
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.19.1/TweenMax.min.js"></script> 
 
<div id="container" style="perspective: 200px"> 
 
    <div id="target" style=" width: 250px; height: 250px; background-color: red; font-size: 100px; border: solid 0px yellow;">Hello</div> 
 
</div>

ответ

1

Он должен быть 20px solid blue (не solid 20px blue)

  ^^^^--- Size goes first 

var element = document.getElementById('target'); 
 
TweenLite.to(element, 2, {border: "20px solid blue"});
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/1.19.1/TweenMax.min.js"></script> 
 
<div id="container" style="perspective: 200px"> 
 
    <div id="target" style=" width: 250px; height: 250px; background-color: red; font-size: 100px; border: solid 0px yellow;">Hello</div> 
 
</div>

+0

Просто интересно, есть ли документация по этому правилу «Размер идет первым»? Я считаю это довольно запутанным, что он работает для CSS, но не GSAP. –

+0

Я думаю, что браузеры для CSS могут обрабатывать любой заказ, но GSAP, скорее всего, придется придерживаться порядка, чтобы интерполировать. Здесь DOC, который упоминает размер сначала ' || || 'https://developer.mozilla.org/en/docs/Web/CSS/border – GibboK

+1

@ GibboK точно, браузеры позволяют вам возиться с заказом, а не gSock –