I am running ads on Google's DoubleClick DFA.
As I do Flash and HTML5 as needed, I code animations using GSAP AS3 and GSAP JS. I begin with Flash using GSAP AS3 and drop my instances onto the time line in layers as makes sense. I name the instances and set the opacity/alpha to 0 or position the intances offstage as makes sense. I get approval and move to HTML5 versions.
For each instance in Flash I created a DIV in HTML5 where the instance name becomes the DIV ID. Where MovieClips are containers of images and or text, DIVs are the containers in HTML5. So when the html page loads, a listener in JavaScript will wait for all images to load and then initiate the animation. The CSS code does nothing more than the setup. The JavaScript does the heavy lifting.
In the JS file I declare my variable names to match the ID names. Now my TweenLite code can talk to the DIVs and animate.
A minimal amount of CSS is written as follows. JavaScript takes it from there.
overflow: hidden;
position: absolute;
opacity:0;
My HTML5 folder has
CSSPlugin.min.js
EasePack.min.js
script.js which is where my actionscript AS3 code gets dropped into and tweeked for javascript.
TweenLite.min.js
Google let me get away with 12 images, 4 js files, a CSS file and the html file. However some ad servers set a limit of 10 files for an ad. So it's probably a better practice to generate or create your sprite sheets in Flash of Photoshop. Obviously JPG images get ganged together and PNGs get ganged together. Use PNG Crushers available online such as https://tinypng.com/
One pretty solid rule is that your files zipped should be less than 100k for Leaderboard, Big Box and Skyscrapers or 150k for larger ads like Half Page.
Bottom line is that I use GSAP AS3 and it's companion GSAP JS. Very nice.
Here's the script.js file used on the Google Ad
/////////// HTML code is below