टेक्सराईज़ का आकार बदलना बंद करें


117

मैं अपनी साइट में आकार बदलने वाले टेक्सारिया को बंद करने की कोशिश कर रहा हूं; अभी मैं इस विधि का उपयोग कर रहा हूँ:

.textarea {
    clear:left;
    min-width: 267px;
    max-width: 267px;
    min-height:150px;
    max-height:150px;
}

मुझे पता है कि मेरा तरीका सही नहीं है और मैं जावास्क्रिप्ट में बेहतर खोज रहा हूं। मैं एक शुरुआती हूं, इसलिए मेरे लिए सबसे अच्छा समाधान HTML5 या jQuery होगा।

जवाबों:


253

आकार बदलने को अक्षम करने के लिए इस सीएसएस का प्रयास करें

सभी textareas के लिए आकार बदलने के लिए सीएसएस इस तरह दिखता है:

textarea {
    resize: none;
}

इसके बजाय आप इसे केवल एक ही नाम से textarea असाइन कर सकते हैं (जहाँ textarea HTML है):

textarea[name=foo] {
    resize: none;
}

या आईडी द्वारा (जहां textarea HTML है):

#foo {
    resize: none;
}

से लिया गया: http://www.electrictoolbox.com/disable-textarea-resizing-safari-chrome/


7
केवल एक समाधान से जोड़ने के बजाय, आपको इसे यहां थोड़ा समझाना चाहिए। भविष्य में इस प्रश्न को देखने वाले बहुत से लोग उत्तर के लिए लिंक पर क्लिक करने के लिए परेशान नहीं होंगे। यहां कुछ विवरण जोड़ें और मैं आपका उत्तर +1 कर दूंगा।
जॉन एगलैंड


8

CSS3 इस समस्या को हल कर सकता है। दुर्भाग्य से यह आजकल उपयोग किए गए ब्राउज़रों के केवल 60% पर समर्थित है।

IE और iOS के लिए आप आकार बदलना बंद नहीं कर सकते, लेकिन आप textareaइसकी सेटिंग करके आयाम को सीमित कर सकते हैं widthऔर height

/* One can also turn on/off specific axis. Defaults to both on. */
textarea { resize:vertical; } /* none|horizontal|vertical|both */

डेमो देखें


2

यह सिर्फ html draggable विशेषता का उपयोग करके आसान किया जा सकता है

<textarea name="mytextarea" draggable="false"></textarea>

डिफ़ॉल्ट मान सत्य है।


2
प्रश्न टेक्स्टारिया के आकार बदलने के बारे में है, न कि ड्रैग और ड्रॉप के बारे में। जैसा कि अपेक्षित था, इस विशेषता को एक textarea पर सेट करना क्रोम (कम से कम) में चाल नहीं करता है।
peveuve

2

बस एक अतिरिक्त विकल्प, यदि आप आवेदन में सभी पाठ्यसामर्थियों के लिए डिफ़ॉल्ट व्यवहार वापस करना चाहते हैं, तो आप अपने सीएसएस में निम्नलिखित जोड़ सकते हैं:

textarea:not([resize="true"]) {
  resize: none !important;
}

और जहाँ आप आकार बदलना चाहते हैं, उसे सक्षम करने के लिए निम्नलिखित करें:

<textarea resize="true"></textarea>

ध्यान रखें कि यह समाधान उन सभी ब्राउज़रों में काम नहीं कर सकता है जिनका आप समर्थन करना चाहते हैं। आप resizeयहाँ के लिए समर्थन की सूची देख सकते हैं: http://caniuse.com/#feat=css-resize


1

प्रश्न के अनुसार, मैंने उत्तरों को जावास्क्रिप्ट में सूचीबद्ध किया है

TagName का चयन करके

document.getElementsByTagName('textarea')[0].style.resize = "none";

Id सेलेक्ट करके

document.getElementById('textArea').style.resize = "none";

0
//CSS:
.textarea {
    resize: none;
    min-width: //-> Integer number of pixels
    min-height: //-> Integer number of pixels
    max-width: //-> min-width
    max-height: //-> min-height
}

उपरोक्त कोड अधिकांश ब्राउज़रों पर काम करता है

//HTML:
<textarea id='textarea' draggable='false'></textarea>

अधिक से अधिक ब्राउज़र पर काम करने के लिए दोनों करें


हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.