By 
chester40
				
					
						Здравствуйте. Прошу помочь в решении следующей задачи:
	Имеется родительский элемент со свойством clip-path и дочерний элемент с анимацией:
	Для примера:
	HTML
<div id="logoimage-waves">
     <div id="waves-animated"></div>
</div>
 
<svg>
       <clipPath id="WavesPolygon">
             <polygon points="0 0,95 0,95 8,80 5,60 10,40 15,20 20">
             </polygon>
       </clipPath>
</svg>
	 
	CSS
#logoimage-waves {
    width: 100px;
    height: 100px;
    clip-path: url("#WavesPolygon");
    -webkit-clip-path: polygon(0px 0px,95px 0px,95px 8px,80px 5px,60px 10px,40px 15px,20px 20px);
    position: absolute;
}
 
#waves-animated {
    width: 100px;
    height: 100px;
    position: absolute;
    background: url(/images/waves.png) no-repeat;
    animation: waves-animation 40s;
}
 
@keyframes waves-animation {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(-360deg);
    }
}
	 
	Вопрос следующий:
	В Firefox всё работает как надо, дочерний анимированный элемент обрезается с помощью свойства clip-path родительского элемента. Но в других браузерах (проверял в Chrome 55 и Opera 41) обрезка не работает и элемент показывается полностью. Причём, что важно, это происходит только в том случае, если дочерний элемент анимирован с помощью свойства transform, а если анимируется другое свойство, например margin, то обрезка работает во всех браузерах. Короче говоря: дочерние элементы анимированные с помощью transform не обрезаются с помощью clip-path родительского элемента в Хроме и Опере.
	В общем задачка та еще. Второй день пытаюсь решить )
	Благодарю за внимание!
					
				
			 
		
Question
borus
Здравствуйте!
Делаю сайт на базе этого шаблона. По сравнению с исходным шаблоном добавил в разметку доп меню с желтыми пунктами Профсоюз и т.д. Это подменю c селектором .headerrow .cell_pad .moduletable:nth-child(2) спозиционировал абсолютно относительно верхнего края родительского элемента div.cell_pad, для чего последнему пришлось дать position:relative; После это вся анимация опустилась на высоту внедрённого элемента с селектором .headerrow .cell_pad .moduletable:nth-child(2). Почему? Ведь в мануале написано, что position:absolute должен заставлять соседние элементы, а именно первый div.moduletable, вести себя так, как будто следующего за ним позиционированного элемента нет совсем.
Начал менять свойства top у колеблющихся шаров и пчёл, уменьшая их на 200 px у всех. В итоге получилось поднять два правых шарика на нормальную высоту. Зато пчёлы и первый слева шар ведут себя не как в оригинале: пчелы в конце траектории скачут, как впрочем и левый шар.
Почему происходят такие скачки? Как их исправить?
Edited by borusLink to comment
Share on other sites
5 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.