2010-12-23 23 views
26

क्या सीएसएस का उपयोग कर रेडियो बटन बड़ा करने का कोई तरीका है?रेडियो बटन बड़ा बनाएं?

यदि नहीं, तो मैं इसे और कैसे कर सकता हूं?

+0

वास्तव में क्या आप यहाँ प्राप्त करने की कोशिश कर रहे हैं? हो सकता है कि इसका कोई वैकल्पिक समाधान हो .... छवियों का उपयोग कर रेडियो बटन को अनुकरण करने की तरह .... – Starx

+0

http: // stackoverflow।कॉम/प्रश्न/7727255/कैसे-कैन-आई-मेक-ए-एचटीएमएल-रेडियोबुटटन-एक-बड़े-लक्ष्य-क्षेत्र –

+3

@ क्रिस्टोफ्रॉउसी प्रश्न, आपने लिंक किया है, इस ओपी के प्रश्न से कोई लेना देना नहीं है। यहां, बड़े रेडियो बटन पूछे जाते हैं (समाधान 'इनपुट' तत्व की शैलियों को बदलना है), जबकि आपके जुड़े प्रश्न में ओपी बड़े "क्लिक करने योग्य" क्षेत्रों के बारे में पूछता है (समाधान' लेबल' शैलियों को बदलना है)। [यहां] (http://stackoverflow.com/a/4920348/1469208), इसके विपरीत, ऐसे प्रश्न हैं जो इस प्रश्न में पूछे गए ओपी के प्रश्न के अनुरूप हैं। सबसे तेज़ उत्तर ((सी) [imanabidi] (http://stackoverflow.com/users/184572/imanabidi)) - "चौड़ाई और ऊंचाई दोनों सेट करें और एम मीट्रिक का उपयोग करें: चौड़ाई: 1.2em; ऊंचाई: 1.2em"। – trejder

उत्तर

0

रेडियो तत्वों के अंदर कुछ quirky <span> चालें हो सकती हैं लेकिन मुझे लगता है कि विभिन्न ब्राउज़रों में उनका उपयोग करने से उन्हें डीबग करने में परेशानी होगी।

मैंने अतीत में this script का उपयोग किया है लेकिन हाल ही में नहीं।

2

आप इसे इस पर सीएसएस लेकिन ब्राउज़र और OS भी प्रभाव का उपयोग कर सकते हो सकता है देखते हैं। निम्नलिखित लेख देखें।

Styling radio buttons with CSS

11

आप इसे स्थापित करने के लिए आसानी से सक्षम कर सकते हैं ऊंचाई और किसी भी तत्व के साथ के रूप में चौड़ाई है।

यहाँ कोड के साथ बेला

JSFIDDLE BIG RADIO BUTTON

एचटीएमएल

<input id="r1" type="radio" name="group1" class="radio1" /> 
<label for="r1">label 1 text</label> 
<input id="r2" type="radio" name="group1" class="radio2" /> 
<label for="r2">label 2 text</label> 
<input id="r3" type="radio" name="group1" class="radio3" /> 
<label for="r3">label 3 text</label> 
<input id="r4" type="radio" name="group1" class="radio4" /> 
<label for="r4">label 4 text</label> 

सीएसएस

input[type=radio] { 
    display: none; 
} 
input[type=radio] + label::before { 
    content: ''; 
    display: inline-block; 
    border: 1px solid #000; 
    border-radius: 50%; 
    margin: 0 0.5em; 
} 
input[type=radio]:checked + label::before { 
    background-color: #ffa; 
} 

.radio1 + label::before { 
    width: 0.5em; 
    height: 0.5em; 
} 

.radio2 + label::before { 
    width: 0.75em; 
    height: 0.75em; 
} 

.radio3 + label::before { 
    width: 1em; 
    height: 1em; 
} 

.radio4 + label::before { 
    width: 1.5em; 
    height: 1.5em; 
} 

स्टाइलिंग रेडियो बटन नहीं है टी आसान है।

सामान्य रूप से फॉर्म तत्व CSS alone का उपयोग कर शैली के लिए समस्याग्रस्त या असंभव हैं।

बस रेडियो बटन के लिए बड़ा आकार के साथ अपनी शैली के लिए इस लिंक पर जाना चाहिए ..

इसके अलावा इस लिंक पर देखो ...

Bigger radio buttons

+1

यह बहुत चालाक है, मुझे यह पसंद है! मेरे लिए काम किया धन्यवाद! – LukeP

+0

@LukeP: हमेशा स्वागत है :) – KesaVan

+0

उपयोगिता को चोट पहुंचाने से बचने का कोई तरीका होगा? जाहिर है यह कीबोर्ड के साथ काम नहीं करता है। –

1

आज़माएं:

एचटीएमएल

<label> 
    <input type="radio" value="1"> 
    <div></div> 
</label> 

सीएसएस

input[type="radio"] { 
    display: none; 
} 

input[type="radio"] + div { 
    height: 20px; 
    width: 20px; 
    display: inline-block; 
    cursor: pointer; 
    vertical-align: middle; 
    background: #FFF; 
    border: 1px solid #d2d2d2; 
    border-radius: 100%; 
} 

input[type="radio"] + div:hover { 
    border-color: #c2c2c2; 
} 

input[type="radio"]:checked + div { 
    background:gray; 
} 

डेमो: http://jsfiddle.net/nuzhysgg/

+0

लेबल (इनलाइन तत्व) में एक डीआईवी (ब्लॉक-स्तर तत्व) नहीं हो सकता है - https://stackoverflow.com/questions/18609554/is-div-inside-label-block-correct – GlennG

52

इस कोड का प्रयास करें:

input[type='radio'] { transform: scale(2); }

+0

क्रोम में मेरे लिए काम करता है। –

+0

रेडियोबूटन "चौड़ाई" और "ऊंचाई" का उपयोग करने से "ट्रांसफॉर्म" के साथ बेहतर दिखता है और यह अन्य समाधानों की तुलना में बहुत आसान है। –

+5

हाँ यह काम करता है, लेकिन परिणाम बदसूरत है! – krlzlx

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