2011-01-18 2 views
15

Je souhaite que la couleur d'arrière-plan soit le noir et la couleur du texte blanche pour le contenu de l'iframe par rapport à son arrière-plan blanc normal et au texte noir. L'attribut iframe src pointe vers un domaine différent auquel je n'ai pas accès ou ne peux placer aucun fichier ou feuille de style dans ce domaine. Donc, étant donné ces conditions, est-il possible de faire juste ces changements de style dans le contenu iframe et si oui alors comment?Comment changer le style de contenu iframe inter-domaine?

Répondre

25

La seule possibilité serait de charger le contenu iframe via un de vos mandataires et de modifier le contenu HTML. Vous ne pouvez pas accéder aux iframes d'un autre domaine via JavaScript.

+0

Est-ce que cela fonctionnera de la même manière que cela fonctionne avec sa propre URL? – Brune

+0

@Brune Je suppose que ma réponse n'est plus valide. voir: http://en.wikipedia.org/wiki/Same_origin_policy#Relaxing_the_same-origin_policy –

+0

Je l'ai essayé. Mais pourrait réaliser cela. Merci pour la mise à jour – Brune

10

Ce n'est pas possible. Le point entier du Same Origin Policy est que vous ne pouvez pas accéder ou manipuler le contenu d'un autre domaine.

+4

-1: Le fait de pointer la même règle d'origine est bon. Mais ne disons pas que ce n'est pas possible, comme cela peut certainement être fait, mais avec un effort significatif comme dans la réponse de Sean, ou minimalement, comme dans la réponse de scmehetio .. –

+1

@JonathanM: Je ne suis pas sûr que ça justifie bas vote, étant techniquement correct. Il est vrai qu'il n'est pas possible de modifier un iframe protégé par la même politique d'origine. Aller avec la réponse de Sean est bien, mais ce n'est plus un iframe inter-domaine. Il évite également une multitude d'autres problèmes que vous avez à traiter, comme les URL relatives pour un. En ce qui concerne l'autre réponse, les filtres IE ne fonctionnent que dans IE. Donc, je suis entièrement d'accord avec cette réponse ... mais, peu importe :-) –

+1

Vous faites un bon point sur la réponse en éliminant la même situation d'origine. Downvote supprimé. (A dû faire une petite modification pour faciliter la suppression du downvote, SO l'avait verrouillé.) –

2

Celui-ci a été ici un certain temps, mais nous espérons que cela aidera quelqu'un ....

Le plus proche que je peux voir est d'utiliser un filtre sur l'iframe

Xray: rend noir et blanc puis radiers il.

<iframe style="filter:xray" src="..... 

Inversé: toutes les couleurs intervertit plutôt que de simplement échanger noir & blanc.

<iframe style="filter:invert" src="..... 

Les deux ne fonctionnent que dans IE. Je pensais que cela ne fonctionnait que sur les images jusqu'à il y a quelques minutes ...

par ex. http://www.ssi-developer.net/css/visual-filters.shtml

Questions connexes