iframe CSS Override pour le nouveau widget Twitter
Je suis en train de personnaliser le nouveau widget Twitter, mais ayant quelques problèmes avec le CSS et ne semblent pas pour remplacer la sienne sur cette nouvelle. J'ai essayé de chercher des solutions, mais ne trouvez pas tout qui correspondent.
Voici ma page avec le widget dans le droit de la nav et le modifié le CSS pour le .chronologie de la classe:
.timeline {
margin-bottom:0;
border:0 !important;
border-radius:0 !important;
-webkit-border-radius:0;
-moz-border-radius:0;
}
html:
<div class="bg">
<h3 class="twitter">Twitter News</h3>
<div id="twitter">
<a class="twitter-timeline" href="https://twitter.com/" data-widget-id="268336500536647680">Tweets by </a>
<script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0];if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src="//platform.twitter.com/widgets.js";fjs.parentNode.insertBefore(js,fjs);}}(document,"script","twitter-wjs");</script>
</div></div>
J'ai commencé à utiliser !d'importantes déclarations et a essayé de la main #id twitter remplacer, mais aucun ne fonctionne.
Toutes les idées beaucoup apprécié.
**J'ai apparemment besoin de modifier l'iframe en quelque sorte, mais vous ne savez pas comment faire si quelqu'un a une idée comment je peux le faire avec mon code (par opposition à un tutoriel) ce serait génial. J'ai aussi besoin de changer l'iframe width..
source d'informationauteur 321 | 2012-11-13
Vous devez vous connecter pour publier un commentaire.
J'ai réussi à le faire avec javascript (j'utilise jQuery dans ma demande!). Vous devez appliquer les styles après l'iframe de la charge (je n'ai pas trouver de "chargé" de l'événement, j'ai donc utiliser une stratégie d'interrogation).
C'est sans jQuery pour toute personne intéressée.
Mis à JOUR avec une bien meilleure solution qui ne repose pas sur l'interrogation et donc n'a pas un éclair de non stylé mise en page, à l'occasion:
ancienne version:
J'ai adapté le code de @Sebastiaan Ordelman et ajouté quelques commentaires (en se référant aux valeurs de la vieille API). C'était ma tentative de faire correspondre l'ancienne API dans un court laps de temps. Placez ce code une fois que votre nouveau copier et coller le code de la nouvelle widget twitter.
Image du changement: http://img837.imageshack.us/img837/1139/btjc.png
Cela ne veut pas répondre directement CSS aspect de la question, mais je pense qu'il est intéressant de noter pour l'exhaustivité que certains de ce que vous voulez (par exemple masquer les bordures /en-tête) peut être fait en utilisant les attributs data - passé dans le widget:
https://dev.twitter.com/docs/embedded-timelines#customization
Peut-être il ya un avantage de performance pour minimiser javascript bras de fer si possible?
Ils créer un iframe, donc c'est un autre document.
Vous ne pouvez pas les éléments de style dans un autre document, de sorte qu'il n'est pas possible, à moins que twitter offre un crochet pour intégrer votre propre feuille de style dans leur iframe..
Twitter ne permet que de style le lien de la couleur du widget et de choisir une lumière/obscurité thème.
Alternativement, vous pouvez créer votre propre widget à l'aide de la l'API twitter et puis vous pouvez définir le style de toute façon que vous voulez..
Je ne sais pas si il était possible que lorsque la question a été posée, mais maintenant, c'est le cas, vérifiez la docs:
Comme dit ci-dessus, vous ne pouvez pas modifier le CSS dans une origine différente de l'iframe, voici quelques infos:
Comment appliquer le style CSS à iframe?
http://www.jquery4u.com/dom-modification/jquery-change-css-iframe-content/
Il peut être préférable d'utiliser twitter de concours complet de la structure.
comme par https://dev.twitter.com/web/javascript/loading
et par https://dev.twitter.com/web/javascript/events de votre événement et le raccordement à l'ressemblerait à quelque chose comme ceci (gardez à l'esprit cet exemple utilise jquery, vous pouvez opter pour un javascript uniquement)