iFrame is een zeer handige manier om externe inhoud op uw webpagina weer te geven. Echter, het is een beetje ingewikkeld als u wilt toevoegen of wijzigen van de bestaande CSS-stijl. Je kunt niet simpelweg CSS toevoegen op de ouder/wrapper pagina. In deze tutorial laten we u zien hoe u JavaScript gebruikt om CSS in iFrame te injecteren.
in het fragment hieronder, zodra alles geladen is, krijgen we het iframe element door ID. Haal dan het contentDocument en injecteer onze stijlen in iFrame met behulp van innerHTML.,
of u kunt het doen met jQuery.
$("#myiFrame").on("load", function() { let head = $("#myiFrame").contents().find("head"); let css = '<style>/********* Put your styles here **********</style>'; $(head).append(css);});
voorbeeld
bijvoorbeeld, hier is de 3D CSS Progressbar tutorial pagina die we willen toevoegen aan de Onze met behulp van iframe.
<iframe width="1024px" height="768px" src="http://127.0.0.1:5501/bar"></iframe>
stel dat we de lengte van de voortgangsbalk willen veranderen naar 45%. Helaas kunnen we zoiets niet doen van onze ouder CSS.
.bar { width: 45%; /* This will not work */}
laten we proberen JavaScript te gebruiken. Het is belangrijk dat u moet wachten tot het iFrame is geladen voordat u de CSS kunt injecteren., In dit geval zetten we de code in onload event listener.
Hier is het resultaat.
CSS-bestand toevoegen aan iFrame
u kunt een volledig CSS-bestand toevoegen in plaats van gescheiden stijlen te injecteren door een link aan te maken en deze toe te voegen aan de head van het iFrame.