J'ai créé un nouveau div utilisant JavaScript et défini sa largeur et sa hauteur. Immédiatement après, j'ai besoin de le redimensionner à 100% de largeur avec effet de transition. Mais il se manifeste uniquement lorsque l'édition de styles est à l'intérieur de la fonction Timeout. Sans cela, il suffit de sauter à une nouvelle largeur.Les manifestes de transition Css uniquement à l'intérieur de la fonction de temporisation
Css:
#project-detail {
@extend .project-detail-preview;
transition: width 0.25s ease-out, top 0.25s ease-out, left 0.25s ease-out, height 0.25s ease-out;
}
Script:
var detailContainer = document.createElement("div");
detailContainer.id = "project-detail";
detailContainer.innerHTML = previewContent.innerHTML;
detailContainer.style.width = previewWidth;
detailContainer.style.height = previewHeight;
blocksContainer.appendChild(detailContainer);
for (let project of source.projects) {
if(project.id == projectID) {
setTimeout(function() {
detailContainer.style.width = "100%";
}, 1);
}
}
Prévoir des downvotes silencieux dans 3 ... 2 ... 1 ... –
Ok, merci pour l'explication! Il m'a fallu environ quatre heures avant que je trouve accidentellement cette solution .. Maintenant, au moins, je sais comment cela fonctionne :) – sapharick
Content de l'avoir aidé! Cela mérite-t-il une réponse positive et acceptée? :) –