2 akcje

iFrame jest bardzo wygodnym sposobem wyświetlania zewnętrznej zawartości na swojej stronie internetowej. Jest to jednak trochę skomplikowane, jeśli chcesz dodać dodatkowy lub zmienić istniejący styl CSS. Nie można po prostu dodać CSS na stronie nadrzędnej/wrapper. W tym samouczku pokażemy Ci, jak użyć JavaScript, aby wstrzyknąć CSS do iFrame.

w poniższym fragmencie, gdy wszystko zostanie załadowane, otrzymamy element iFrame według ID. Następnie pobierz contentDocument i wprowadź nasze style do iFrame za pomocą innerHTML.,

lub możesz to zrobić za pomocą jQuery.

$("#myiFrame").on("load", function() { let head = $("#myiFrame").contents().find("head"); let css = '<style>/********* Put your styles here **********</style>'; $(head).append(css);});

przykład

na przykład, tutaj znajduje się strona samouczka 3D CSS Progressbar, którą chcemy dodać do naszego za pomocą iframe.

<iframe width="1024px" height="768px" src="http://127.0.0.1:5501/bar"></iframe>

Załóżmy, że chcemy zmienić długość paska postępu na 45%. Niestety, nie możemy zrobić czegoś takiego z naszego rodzica CSS.

.bar { width: 45%; /* This will not work */}

spróbujmy użyć JavaScript. Ważne jest, aby poczekać, aż ramka iFrame zostanie załadowana, zanim będzie można wprowadzić CSS., W takim przypadku umieścimy kod w onload Event listener.

oto wynik.

dodawanie pliku CSS do ramki iFrame

możesz dodać cały plik CSS zamiast wstrzykiwać oddzielne style, tworząc link i dodając go do głowy ramki iframe.

Uwaga
ta metoda nie działa z zawartością między domenami. Musisz ustawić odpowiedni nagłówek CORS, ale nie jest to zalecane ze względu na zagrożenia bezpieczeństwa.,

napisane przez

Articles

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *