2011-04-16 17 views
10

क्लिप नहीं किया गया है, मैं गोलाकार divs के अंदर कुछ स्टाइलिस्ट टेक्स्ट कर रहा हूं, जहां टेक्स्ट कंटेनर के शीर्ष के ठीक ऊपर बाधा लगाता है। मैं लगभग सभी सामग्री, नेस्टेड divs, पृष्ठभूमि के रूप में सेट छवियों, आदि को नियंत्रित करने में सक्षम हूं, और उन्हें सफलतापूर्वक सभी क्लिप था, लेकिन यह मुझे गंभीर दुःख दे रहा है।सीमा-त्रिज्या; अतिप्रवाह: छिपी हुई, और पाठ को

पुरानी-स्कूल छवि सीमाओं या कवर-अप का उपयोग करना एक समाधान नहीं है क्योंकि हमारे पास गतिशील ग्राफिकल पृष्ठभूमि हैं। हमें वास्तव में टेक्स्ट को क्लिप करने के लिए एक समाधान की आवश्यकता है।

यह ज्यादातर की और पुराने संस्करणों Firefox 3.x में दिखाई दे रहा है क्रोम

यहाँ साथ खेलने के लिए नमूना कोड:

http://jsfiddle.net/vfp3v/1/

div { 
    -moz-border-radius: 45px; 
    border-radius: 45px; 
    background-color: #ccc; 
    font-size: 100px; 
    color: #777; 
    line-height: 70%; 
    overflow: hidden; 
    width: 257px; 
} 

Jank:

enter image description here

सूचना यह नया Chrome और Firefox 4 में ठीक किया गया है - शुई:

enter image description here

हमारी साइट उपयोगकर्ताओं के अधिकांश Firefox 3.6 हैं, इसलिए उनके लिए एक सुरुचिपूर्ण समाधान प्रदान करने के लिए सक्षम होने के लिए प्यार होता है भी। किसी भी मदद की सराहना की! चीयर्स

+0

woah ... यह काफी काम की तरह लगता है .... शुभकामनाएं lol – Jason

+0

आप एक छवि का उपयोग कर सकते हैं;) – Blender

+0

छवि पोस्ट नहीं होगी क्योंकि पाठ ब्लॉग पोस्ट खिताब से उत्पन्न होता है। – ioTus

उत्तर

5

यह एक में काम करता है एफएफ 3.6: http://jsfiddle.net/vfp3v/15/

यह कुछ कमियां भी हैं के रूप में आप दूसरे उदाहरण में देख सकते हैं (एफएफ 3.6 में) बंद काटा सीमा एक ठोस रंग है, इसलिए यदि आप कुछ प्रयोग कर रहे हैं पृष्ठभूमि की तरह यह बदसूरत लग सकता है। बस इसे देखो, यह आपकी आवश्यकताओं के अनुरूप हो सकता है।

मैं सिर्फ एक काल कहा:

<div><span></span>WXYZ</div> 

और उसके बाद के रंग जैसा ही में एक सीमा के साथ पाठ पर यह तैनात है, और सीमा के रूप में एक विस्थापन के रूप में बड़ी:

div{ 
    position:relative; 
    etc... 
} 
span{ 
    position:absolute; display:block; width:100%; height:100%; 
    border:25px solid #fff; top:-25px; left:-25px; 
    -moz-border-radius: 70px; border-radius: 70px; /* 45 radius + 25 border */  
} 

संपादित करें: क्रोम 10.0.6 (जिसमें क्लिपिंग बग है) में इसका परीक्षण किया गया और यह काम किया!

ब्राउज़र में जो सीमा-त्रिज्या का सही ढंग से समर्थन करते हैं (और यह सीमा-रंग) भी दिखाई नहीं देता है क्योंकि यह बंद हो जाता है (अतिप्रवाह: छुपा हुआ)।

+0

दिलचस्प तरीका, हालांकि हमें इसकी आवश्यकता नहीं है। हमारे पास अत्यधिक गतिशील पृष्ठभूमि छवियां हैं जिन्हें सभी यूआई तत्वों पर कोने और गोलाकार कोनों को दिखाने की आवश्यकता है। – ioTus

+0

यह वास्तव में इस समाधान का एकमात्र बड़ा दोष है। पृष्ठभूमि-छवियों के साथ मैं किसी भी अच्छे समाधान के बारे में नहीं सोच सकता, मुझे लगता है कि आप हमेशा उन हिस्सों को ढंकने की विधि के साथ समाप्त होते हैं जिन्हें छुपाया जाना चाहिए। या बस पर्याप्त पैडिंग जोड़ें ताकि क्लिपिंग की आवश्यकता न हो ... – Willem

+0

जानकारी के सामान्य बिट के रूप में हमारे वर्तमान आंशिक "समाधान" में 20% की अल्फा पारदर्शिता पर टेक्स्ट होना है, इसलिए टेक्स्ट क्लिपिंग कम ध्यान देने योग्य है लेकिन उच्च कंट्रास्ट ठोस बीजी रंग टेक्स्ट बाहर पॉप।अभी भी वैध क्लिपिंग/मास्किंग नहीं है, लेकिन सही दिशा में एक कदम – ioTus

संबंधित मुद्दे