2013-02-13 17 views
6

Bunun başka konulardan sorulmuş olduğunu biliyorum, ancak bu cevaplar davanıma uymadı. Buradan twitter takip düğmesine katıştırırsanız:Twitter, düğme genişliğini nasıl değiştirir?

https://twitter.com/about/resources/buttons

<a href="https://twitter.com/share" class="twitter-share-button">Tweet</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> 

JS Bir iframe ile bağlantıyı değiştirir:

<iframe scrolling="no" frameborder="0" allowtransparency="true" src="http://platform.twitter.com/widgets/tweet_button.1360366574.html#_=1360791644346&amp;count=horizontal&amp;id=twitter-widget-0&amp;lang=en&amp;original_referer=http%3A%2F%2Fwww.foo.com%2Fsearch%2Fcats&amp;size=m&amp;text=Search%20Results%20for%20%22cats%22%20on%20Foo&amp;url=http%3A%2F%2Fwww.foo.com%2Fsearch%2Fcats" class="twitter-share-button twitter-count-horizontal" style="width: 109px; height: 20px;" title="Twitter Tweet Button" data-twttr-rendered="true"></iframe> 

Eğer genişliği bir satır içi stili olarak ayarlanmıştır görebileceğiniz gibi . Ben böyle bir şey ile bu overide biliyorum: Örneğin

.twitter-share-button { width: 80px !important; } 

ama yapacak istemiyorum, çünkü ne olursa belirli bir içerik sayfasında çok sayıda hisse sayısı artar. Daha sonra hisse sayısı minimum genişlik tarafından engellenir.

Dönen iframe'i içerdeki paylaşım sayısına göre boyutlandırmak için twitter'e bir yol var mıdır, öyle olması gereken minimum genişlikten daha büyük olamaz?

Facebook'un istenen genişlikteki veri özelliklerini data-width kabul ettiğini biliyorum. Bu, yukarıda sorduğum davranış türünü elde etmek için otomatik olarak ayarlanabileceğine inanıyorum. Twitter, paylaşım düğmesi için benzer bir şey sunuyor mu?

Bu bilinen bir sorunu olarak görünmektedir
.twitter-share-button { min-width: 80px !important; width: auto !important;} 
+1

Bağlantı bir iframe içerisindedir, bunu değiştirmek için CSS'nizde hiçbir şey yapamazsınız. Twitter'ın bazı api ile stilleri değiştirip değiştirmeyeceğini görmek için bakmalısınız. Iframe genişliğini ayarlamak düğme boyutunu değiştirir mi? – epascarello

+1

Twitter takip düğmesiyle aynı sorunu yaşıyorum. JS kodu, gerçek düğmeden daha büyük bir satır içi genişliğe sahip HTML üretir. Bu, hassas konumlandırmayı olanaksız kılar. Genişliği “! Önemli” ile geçersiz kılmak, takipçi sayısının büyüyebilmesi, düğmenin daha da büyüyerek “kesilmesi” gibi sürdürülebilir bir çözüm değildir. Bu sorun için herkes bir çözüm buldu – Squrler

cevap

1

, bir min-width set şimdi. Şu anda düğme genişliğinin gerçek içeriğiyle eşleşmesine izin vermek için temiz temiz görünüyor.
Bazı özel javascript ile keman olabilir, ancak IFrame'i işlemeye çalışırsanız sonunda IFrame/CORS duvarına vurursunuz.

+0

benim sorunum, varsayılan genişliğin kendisinin çok büyük olmasıdır. Min genişliğini ayarlamak yardımcı olmaz. – TK123

+0

"width: auto" öğesini de ekleyebilirsiniz. Cevabımı güncelledim. – zakangelle

+1

http://jsfiddle.net/3LxbJ/ daha büyük – TK123

1

itibariyle yaklaşık 2 yıldır etkili bir çözüm bekliyor edildiğini (this Dev Twitter thread bakınız): Yerine width ait

Fiddle

+0

Twitter gibi bir şirketin bu kadar uzun sürdüğü oldukça acımasız. –

+0

Şimdiye kadar, bir geçici çözüm olarak, sadece 'width 'öğesini container elemanına ayarlıyorum. – superjos