2012-11-25 19 views
5

मैं इसे नीचे के रूप में बनाने की कोशिश कर रहा हूं और इसे समाप्त नहीं कर सका।सीएसएस त्रिभुज पक्ष बाईं ओर दौर के साथ?

मैं केवल बाएं ओर एक गोलाकार कोनों का निर्माण कर सकता हूं लेकिन सही नहीं था।

align top http://www.kerrydeaf.com/arrow.png

#talkbubble 
{ 
width: 100px; 
height: 35px; 
background: #FFCC05; 
position: relative; 
-moz-border-radius:8px 0 0 8px; 
-webkit-border-radius:8px 0 0 8px; 
border-radius:8px 0 0 8px; 
margin-right:50px; 
} 

या यहाँ http://jsfiddle.net/alma/USezL/23/

उत्तर

3

है मुझे लगता है कि यह है कि क्या यू के लिए http://css-tricks.com/snippets/css/css-triangle/

http://jsfiddle.net/zQKhb/

#talkbubble 
{ 
    width: 100px; 
    height: 36px; 
    background: #FFCC05; 
    position: relative; 
    -moz-border-radius:8px 0 0 8px; 
    -webkit-border-radius:8px 0 0 8px; 
    border-radius:8px 0 0 8px; 
    margin-right:50px; 

} 

#talkbubble:before 
{ 
    content:""; 
    display:block; 
    position: absolute; 
    right: -36px; 
    top:0; 
    width: 0; 
    height: 0; 
    border: 18px solid transparent; 

    border-color: transparent transparent #FFCC05 #FFCC05; 
} 
​ 
+0

ओह, क्या आपने मुझे लगभग उसी समाधान के साथ बस इसे हराया? –

+0

धन्यवाद रेन। यह भी सही है। – Irishgirl

+0

क्षमा करें दोस्त :) ... आपके पास ओपी गायब होने पर एक और विस्तृत व्याख्या थी। –

2

आप कुछ अनदेखा कर रहे थे देख रहे है दाईं ओर अपने त्रिकोण में महत्वपूर्ण अंक। सबसे पहले, डिफ़ॉल्ट रूप से: तत्व से पहले display: inline है, इसलिए जिस प्रभाव को आप चाहते थे उसे बनाने के लिए आपको display: block की आवश्यकता है।

दूसरा, right: 120px इसे 120 पिक्सल दूर अपनी मूल स्थिति के दाहिने तरफ से ले जा रहा था। यही है, इसे बाईं तरफ धक्का दिया जा रहा था। इसके बजाय, आपको 100% (भाषण बबल की चौड़ाई) के लिए एक नकारात्मक सही स्थिति की आवश्यकता है ( दाएं)। इस तरह, यह इसके दाईं ओर समाप्त हो जाएगा।

तीसरा, सुनिश्चित नहीं है कि आप किस आकार के लिए जा रहे थे लेकिन यह लगभग सब कुछ था लेकिन त्रिकोण;)।

मैं इस बजाय के लिए चला गया:

#talkbubble:before 
{ 
    content:" "; 
    display: block; 
    position: relative; 
    right: -100%; 

    width: 0; 
    height: 0; 
    border-left: 0 solid transparent; 
    border-right: 20px solid transparent;  
    border-bottom: 35px solid #FFCC05; 
} 

पहले भाग स्थिति के लिए, दूसरा हिस्सा वास्तविक त्रिकोण (http://css-tricks.com/snippets/css/css-triangle/ देखें) पैदा कर रही है है।

jsfiddle में मैंने त्रिभुज नीला बनाया ताकि आप देख सकें कि यह कहां है। कोण को बड़ा बनाने के लिए सीमा-दाएं चौड़ाई बदलें। http://jsfiddle.net/USezL/31/

+0

धन्यवाद स्टीफन। यह एकदम सही है। हां, मैंने कुछ महत्वपूर्ण बिंदुओं को याद किया है, इसलिए मैंने स्टैक ओवरफ्लो से पूछा। – Irishgirl

+0

कोई समस्या नहीं, बस यह इंगित करना चाहता था कि मैंने अलग-अलग क्या किया है ताकि आप इससे सीख सकें। –

+0

ओह, और डीबगिंग के लिए एक युक्ति: पहले तत्व को 'रूपरेखा: लाल ठोस पतली' सेट करें यह देखने के लिए कि यह कहां जा रहा है। फिर इसे सही स्थिति में रखने के बाद, इसे फिर से हटा दें :) –

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