{"id":3411,"date":"2019-06-21T16:35:45","date_gmt":"2019-06-21T16:35:45","guid":{"rendered":"https:\/\/inoveo.ro\/uncategorized\/dezvoltare-de-animatii-cu-css-si-js\/"},"modified":"2019-06-21T16:35:45","modified_gmt":"2019-06-21T16:35:45","slug":"dezvoltare-de-animatii-cu-css-si-js","status":"publish","type":"post","link":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/","title":{"rendered":"Dezvoltare de animatii cu CSS si JS"},"content":{"rendered":"<h2><strong>Costruirea de animatii pentru un website este un proces de continuu de iterare.<\/strong><\/h2>\n<p>De la identificarea elementelor care pot fi dinamice si animate in design-ul unui website pana la transpunerea si finalizarea acestor idei in programare, pot trece prin multiple variante, unele simple si altele crazy, dar intotdeauna gasim o varinta care sa multumeasca nu numai clientul dar si pe noi.<\/p>\n<p>Indiferent de cat de frumos arata design-ul, daca animatiile introduse nu sunt fluide atunci vizitatorii vor ramane cu o impresie urata care ii vor face sa nu mai revina pe website.<\/p>\n<p>Vorbind despre Javascript si CSS, sunt foarte multe metode de a scrie cod care face acelasi lucru, dar unele sunt mai eficiente decat altele. Website-ul INOVEO a trecut printr-o sumedenie de schimbari de la lansarea lui in decembrie si pana acum, majoritatea axate pe imbunatatirea performantei care sa ne permita sa adaugam toate proiectele din portofoliul nostru stufos.<\/p>\n<p>Unele din primele optimizari a fost reducerea elementelor care vor fi animate si ce elemente CSS vor fi afectate. Ca o regula simpla pentru programatori, este recomandat sa se animeze tag-urile CSS <strong>transform<\/strong> si <strong>opacity<\/strong>, iar alte tipuri sa fie evitate sau folosite intr-un numar redus. Acest lucru ne va permite sa rulam animatiile importante cu accelerare grafica. Aceasta schimbare va ajuta si cu unul din principalele bottleneck-uri de performanta la website-urile medii si mari: recalcularea style-ului de catre browser. Aceasta recalculare forteaza browser-ul sa redeseneze intreaga pagina, un process intensiv care va rezulta in miscari cu micro-stutters (sacadari) si cu framerate redus foarte variabil.<\/p>\n<p>Un exemplu de schimbare pozitiva si simpla ar fi urmatorul cod CSS care va muta un div 300 de pixeli.<\/p>\n<p><strong>Before:<\/strong><\/p>\n<div style=\"color: #555; margin-bottom:20px;\">.clasa-animata{<br \/>\n&emsp; left: 0px;<br \/>\n&emsp; animation: move 1s ease-in-out;<br \/>\n}<br \/>\n@keyframes move{<br \/>\n&emsp; to {left: 300px}<br \/>\n}<\/div>\n<p>\n<strong>After:<\/strong><\/p>\n<div style=\"color: #555; margin-bottom:20px;\">.clasa-animata{<br \/>\n&emsp; transform: translateX(0px);<br \/>\n&emsp; animation: move 1s ease-in-out;<br \/>\n}<br \/>\n@keyframes move{<br \/>\n&emsp; to {transform: translateX(300px)}<br \/>\n}<\/div>\n<p>Animatiile realizate cu Javascript au potentialul de a intalni mai multe bottleneck-uri decat daca este folosit doar CSS, dar iti permite sa realizezi lucruri mult mai complicate. In cazul website-ului INOVEO am legat scroll-ul vertical cu miscarea orizontala a proiectelor pe homepage. Initial testele s-au facut cu un numar redus de proiecte, dar in momentul in care a fost finalizata introducerea tuturor proiectelor au probleme mari la animatia de scroll, in special pe calculatoare mai vechi sau slabe. S-a ajuns la concluzia ca intreg backend-ul trebuia sa fie rescris si optimizat daca voiam sa vedem noul nostru site intr-o stare de functionare buna.<\/p>\n<p>Unul din tool-urile folosite pentru a verifica performanta si bottleneck-urile posibile ale unui website este DevTool-ul integrat in browsere, in acest caz cel din Chrome.<br \/>\nS-au identificat multiple puncte care se puteau imbunatati, unele dintre cele mai importante fiind: numarul de call-uri facute catre DOM cand rula functia pentru scroll, numarul de elemente afectate in timpul animatiei de scroll si ordinea efectuarii calculelor si modificarii elementelor din pagina.<\/p>\n<p>Mai jos avem un screenshot la cum aratau graficele inainte de a se efectua toate schimbarile:<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png\" width=\"100%\" \/><\/p>\n<p>Codul JS a suferit modificari majore dar putem exemplifica intr-um mod simplu care poate fi inteles si de incepatori. Voi folosi JS simplu aici, dar noi avem implementat ES6 in codul sursa la website si recomand tuturor sa invete ES5\/ES6.<\/p>\n<p><strong>Before:<\/strong><\/p>\n<div style=\"color: #555; margin-bottom:20px;\">function scrollHome(){<br \/>\n&emsp; var var1Elem, var2Elem, var3Scroll, var4Scroll;<br \/>\n&emsp; var1Elem = document.querySelectorAll(&#8216;.elemente-mari&#8217;);<br \/>\n&emsp; var3Scroll = window.pageYOffset;<br \/>\n&emsp; for(var i=0; i&lt;var1Elem.lenght; i++){<br \/>\n&emsp;&emsp; var1Elem[i].style.transform = &#8216;translate3d(&#8216;+var3Scroll+&#8217;px, 0px, 0px)&#8217;;<br \/>\n&emsp; }<br \/>\n&emsp; var2Elem = document.querySelectorAll(&#8216;.elemente-mici&#8217;);<br \/>\n&emsp; var4Scroll = var3Scroll\/2;<br \/>\n&emsp; for(var i=0; i&lt;var2Elem.lenght; i++){<br \/>\n&emsp;&emsp; var2Elem[i].style.transform = &#8216;translate3d(&#8216;+var4Scroll+&#8217;px, 0px, 0px)&#8217;;<br \/>\n&emsp; }<br \/>\n}\n<\/div>\n<p>\n<strong>After:<\/strong><\/p>\n<div style=\"color: #555; margin-bottom:20px;\">var var1Elem, var2Elem, var1Len, var3Len;<br \/>\nvar1Elem = document.getElementsByClassName(&#8216;elemente-mari&#8217;);<br \/>\nvar2Elem = document.getElementsByClassName(&#8216;elemente-mici&#8217;);<br \/>\nvar1Len = var1Elem.lenght;<br \/>\nvar2Len = var2Elem.lenght;<br \/>\nfunction scrollHome(){<br \/>\n&emsp; var var3Scroll = window.pageYOffset, var4Scroll = var3Scroll\/2;<br \/>\n&emsp; for(var i=0; i&lt;var1Len; i++){<br \/>\n&emsp;&emsp; var1Elem[i].style.transform = &#8216;translate3d(&#8216;+var3Scroll+&#8217;px, 0px, 0px)&#8217;;<br \/>\n&emsp; }<br \/>\n&emsp; for(var i=0; i&lt;var1Len; i++){<br \/>\n&emsp;&emsp; var2Elem[i].style.transform = &#8216;translate3d(&#8216;+var4Scroll+&#8217;px, 0px, 0px)&#8217;;<br \/>\n&emsp; }<br \/>\n}<\/div>\n<p>Modificarile efectuate dupa aceste teste au reusit sa reduca frametime-ul de la peste 100ms la aproape de 30ms, sa reduca significativ timpul de executare a codului JS, numarul de redesenari ale paginii fortate si a numarului de sacadari in timpul scroll-ului.<\/p>\n<p><img decoding=\"async\" src=\"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-after.png\" width=\"100%\" \/><\/p>\n<p>Website-ul INOVEO a vazut multe transformari de la lansare pana acum si vom continua sa-l imbunatatim in fiecare zi.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Costruirea de animatii pentru un website este un proces de continuu de iterare. De la identificarea elementelor care pot fi dinamice si animate in design-ul unui website pana la transpunerea si finalizarea acestor idei in [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/\">Read More&#8230;<span class=\"screen-reader-text\"> from Dezvoltare de animatii cu CSS si JS<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"footnotes":""},"categories":[57],"tags":[],"class_list":["post-3411","post","type-post","status-publish","format-standard","hentry","category-website-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v26.2 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Dezvoltare de animatii cu CSS si JS - INOVEO<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dezvoltare de animatii cu CSS si JS\" \/>\n<meta property=\"og:description\" content=\"Costruirea de animatii pentru un website este un proces de continuu de iterare. De la identificarea elementelor care pot fi dinamice si animate in design-ul unui website pana la transpunerea si finalizarea acestor idei in [...]Read More... from Dezvoltare de animatii cu CSS si JS\" \/>\n<meta property=\"og:url\" content=\"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/\" \/>\n<meta property=\"og:site_name\" content=\"INOVEO\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/inoveobranding\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-06-21T16:35:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png\" \/>\n<meta name=\"author\" content=\"Inoveo\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@inoveobranding\" \/>\n<meta name=\"twitter:site\" content=\"@inoveobranding\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Inoveo\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/\"},\"author\":{\"name\":\"Inoveo\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#\\\/schema\\\/person\\\/b2385fd5dcd9d87cf609b6f457fc4a0b\"},\"headline\":\"Dezvoltare de animatii cu CSS si JS\",\"datePublished\":\"2019-06-21T16:35:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/\"},\"wordCount\":778,\"publisher\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/inoveo.ro\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/Screenshot-INOVEO-before.png\",\"articleSection\":[\"WEBSITE DEVELOPMENT\"],\"inLanguage\":\"en-US\",\"copyrightYear\":\"2019\",\"copyrightHolder\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/\",\"url\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/\",\"name\":\"Dezvoltare de animatii cu CSS si JS - INOVEO\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/inoveo.ro\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/Screenshot-INOVEO-before.png\",\"datePublished\":\"2019-06-21T16:35:45+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#primaryimage\",\"url\":\"https:\\\/\\\/inoveo.ro\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/Screenshot-INOVEO-before.png\",\"contentUrl\":\"https:\\\/\\\/inoveo.ro\\\/wp-content\\\/uploads\\\/2019\\\/06\\\/Screenshot-INOVEO-before.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/home\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dezvoltare de animatii cu CSS si JS\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/\",\"name\":\"INOVEO\",\"description\":\"Agentie de branding ce ofera servicii de branding, rebranding, package design, webdesign si strategii in mediul online.\",\"publisher\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Organization\",\"Place\",\"ProfessionalService\"],\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#organization\",\"name\":\"INOVEO Concept\",\"alternateName\":\"INOVEO\",\"url\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/\",\"logo\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#local-main-organization-logo\"},\"image\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#local-main-organization-logo\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/inoveobranding\\\/\",\"https:\\\/\\\/x.com\\\/inoveobranding\",\"https:\\\/\\\/www.instagram.com\\\/inoveo.consultants\\\/\",\"https:\\\/\\\/www.linkedin.com\\\/company\\\/inoveoconsultants\\\/\",\"https:\\\/\\\/www.youtube.com\\\/@inoveo\"],\"address\":{\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#local-main-place-address\"},\"telephone\":[\"+40740111771\"],\"openingHoursSpecification\":[{\"@type\":\"OpeningHoursSpecification\",\"dayOfWeek\":[\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\"],\"opens\":\"09:00\",\"closes\":\"18:00\"},{\"@type\":\"OpeningHoursSpecification\",\"dayOfWeek\":[\"Saturday\",\"Sunday\"],\"opens\":\"00:00\",\"closes\":\"00:00\"}],\"email\":\"hello@inoveo.ro\",\"vatID\":\"RO34938044\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/#\\\/schema\\\/person\\\/b2385fd5dcd9d87cf609b6f457fc4a0b\",\"name\":\"Inoveo\"},{\"@type\":\"PostalAddress\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#local-main-place-address\",\"streetAddress\":\"Str. Doctor Niculae D. Staicovici 51, Etaj 2, Ap 5\",\"addressLocality\":\"Bucuresti\",\"postalCode\":\"050559\",\"addressRegion\":\"Bucure\u0219ti\",\"addressCountry\":\"RO\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/inoveo.ro\\\/en\\\/website-development\\\/dezvoltare-de-animatii-cu-css-si-js\\\/#local-main-organization-logo\",\"url\":\"https:\\\/\\\/inoveo.ro\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/inoveo-logo.png\",\"contentUrl\":\"https:\\\/\\\/inoveo.ro\\\/wp-content\\\/uploads\\\/2020\\\/08\\\/inoveo-logo.png\",\"width\":336,\"height\":416,\"caption\":\"INOVEO Concept\"}]}<\/script>\n<meta name=\"geo.placename\" content=\"Bucuresti\" \/>\n<meta name=\"geo.region\" content=\"Romania\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Dezvoltare de animatii cu CSS si JS - INOVEO","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/","og_locale":"en_US","og_type":"article","og_title":"Dezvoltare de animatii cu CSS si JS","og_description":"Costruirea de animatii pentru un website este un proces de continuu de iterare. De la identificarea elementelor care pot fi dinamice si animate in design-ul unui website pana la transpunerea si finalizarea acestor idei in [...]Read More... from Dezvoltare de animatii cu CSS si JS","og_url":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/","og_site_name":"INOVEO","article_publisher":"https:\/\/www.facebook.com\/inoveobranding\/","article_published_time":"2019-06-21T16:35:45+00:00","og_image":[{"url":"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png","type":"","width":"","height":""}],"author":"Inoveo","twitter_card":"summary_large_image","twitter_creator":"@inoveobranding","twitter_site":"@inoveobranding","twitter_misc":{"Written by":"Inoveo","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#article","isPartOf":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/"},"author":{"name":"Inoveo","@id":"https:\/\/inoveo.ro\/en\/#\/schema\/person\/b2385fd5dcd9d87cf609b6f457fc4a0b"},"headline":"Dezvoltare de animatii cu CSS si JS","datePublished":"2019-06-21T16:35:45+00:00","mainEntityOfPage":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/"},"wordCount":778,"publisher":{"@id":"https:\/\/inoveo.ro\/en\/#organization"},"image":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#primaryimage"},"thumbnailUrl":"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png","articleSection":["WEBSITE DEVELOPMENT"],"inLanguage":"en-US","copyrightYear":"2019","copyrightHolder":{"@id":"https:\/\/inoveo.ro\/#organization"}},{"@type":"WebPage","@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/","url":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/","name":"Dezvoltare de animatii cu CSS si JS - INOVEO","isPartOf":{"@id":"https:\/\/inoveo.ro\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#primaryimage"},"image":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#primaryimage"},"thumbnailUrl":"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png","datePublished":"2019-06-21T16:35:45+00:00","breadcrumb":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#primaryimage","url":"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png","contentUrl":"https:\/\/inoveo.ro\/wp-content\/uploads\/2019\/06\/Screenshot-INOVEO-before.png"},{"@type":"BreadcrumbList","@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/inoveo.ro\/en\/home\/"},{"@type":"ListItem","position":2,"name":"Dezvoltare de animatii cu CSS si JS"}]},{"@type":"WebSite","@id":"https:\/\/inoveo.ro\/en\/#website","url":"https:\/\/inoveo.ro\/en\/","name":"INOVEO","description":"Agentie de branding ce ofera servicii de branding, rebranding, package design, webdesign si strategii in mediul online.","publisher":{"@id":"https:\/\/inoveo.ro\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/inoveo.ro\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Organization","Place","ProfessionalService"],"@id":"https:\/\/inoveo.ro\/en\/#organization","name":"INOVEO Concept","alternateName":"INOVEO","url":"https:\/\/inoveo.ro\/en\/","logo":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#local-main-organization-logo"},"image":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#local-main-organization-logo"},"sameAs":["https:\/\/www.facebook.com\/inoveobranding\/","https:\/\/x.com\/inoveobranding","https:\/\/www.instagram.com\/inoveo.consultants\/","https:\/\/www.linkedin.com\/company\/inoveoconsultants\/","https:\/\/www.youtube.com\/@inoveo"],"address":{"@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#local-main-place-address"},"telephone":["+40740111771"],"openingHoursSpecification":[{"@type":"OpeningHoursSpecification","dayOfWeek":["Monday","Tuesday","Wednesday","Thursday","Friday"],"opens":"09:00","closes":"18:00"},{"@type":"OpeningHoursSpecification","dayOfWeek":["Saturday","Sunday"],"opens":"00:00","closes":"00:00"}],"email":"hello@inoveo.ro","vatID":"RO34938044"},{"@type":"Person","@id":"https:\/\/inoveo.ro\/en\/#\/schema\/person\/b2385fd5dcd9d87cf609b6f457fc4a0b","name":"Inoveo"},{"@type":"PostalAddress","@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#local-main-place-address","streetAddress":"Str. Doctor Niculae D. Staicovici 51, Etaj 2, Ap 5","addressLocality":"Bucuresti","postalCode":"050559","addressRegion":"Bucure\u0219ti","addressCountry":"RO"},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/#local-main-organization-logo","url":"https:\/\/inoveo.ro\/wp-content\/uploads\/2020\/08\/inoveo-logo.png","contentUrl":"https:\/\/inoveo.ro\/wp-content\/uploads\/2020\/08\/inoveo-logo.png","width":336,"height":416,"caption":"INOVEO Concept"}]},"geo.placename":"Bucuresti","geo.region":"Romania"},"featured_image_src":"","featured_image_src_square":false,"author_info":{"display_name":"Inoveo","author_link":"https:\/\/inoveo.ro\/en\/author\/marius\/"},"rbea_author_info":{"display_name":"Inoveo","author_link":"https:\/\/inoveo.ro\/en\/author\/marius\/"},"rbea_excerpt_info":"Costruirea de animatii pentru un website este un proces de continuu de iterare. De la identificarea elementelor care pot fi dinamice si animate in design-ul unui website pana la transpunerea si finalizarea acestor idei in [...]<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/\">Read More...<span class=\"screen-reader-text\"> from Dezvoltare de animatii cu CSS si JS<\/span><\/a><\/p> [...]<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"https:\/\/inoveo.ro\/en\/website-development\/dezvoltare-de-animatii-cu-css-si-js\/\">Read More...<span class=\"screen-reader-text\"> from Dezvoltare de animatii cu CSS si JS<\/span><\/a><\/p>","category_list":"<a href=\"https:\/\/inoveo.ro\/en\/category\/website-development\/\" rel=\"category tag\">WEBSITE DEVELOPMENT<\/a>","comments_num":"0 comments","_links":{"self":[{"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/posts\/3411","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/comments?post=3411"}],"version-history":[{"count":0,"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/posts\/3411\/revisions"}],"wp:attachment":[{"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/media?parent=3411"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/categories?post=3411"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/inoveo.ro\/en\/wp-json\/wp\/v2\/tags?post=3411"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}