Bir yeniden boyutlandırılabilir özelliğini devre dışı bırakmak istiyorum textarea
.
Şu anda, textarea
a'nın sağ alt köşesine tıklayarak textarea
ve fareyi sürükleyerek yeniden boyutlandırabilirim . Bunu nasıl devre dışı bırakabilirim?
Bir yeniden boyutlandırılabilir özelliğini devre dışı bırakmak istiyorum textarea
.
Şu anda, textarea
a'nın sağ alt köşesine tıklayarak textarea
ve fareyi sürükleyerek yeniden boyutlandırabilirim . Bunu nasıl devre dışı bırakabilirim?
Yanıtlar:
Aşağıdaki CSS kuralı, textarea
öğeler için yeniden boyutlandırma davranışını devre dışı bırakır :
textarea {
resize: none;
}
(Hepsi değil) bazıları için onu devre dışı bırakmak için textarea
, bir var s seçeneklerin çift .
Bir özgü devre dışı bırakmak için textarea
birlikte name
için öznitelik kümesi foo
(yani <textarea name="foo"></textarea>
):
textarea[name=foo] {
resize: none;
}
Veya, bir id
öznitelik (yani <textarea id="foo"></textarea>
) kullanarak :
#foo {
resize: none;
}
W3C sayfa hiçbiri, hem yatay, dikey ve devralma: kısıtlamalarını boyutlandırma için listeler olası değerler:
textarea {
resize: vertical; /* user can resize vertically, but width is fixed */
}
Şu anda hangi tarayıcıların bu özelliği desteklediğini görmek için iyi bir uyumluluk sayfasını inceleyin . Jon Hulka'nın yorumladığı gibi, boyutlar maksimum genişlik, maksimum yükseklik, minimum genişlik ve minimum yükseklik kullanılarak CSS'de daha da kısıtlanabilir .
Bilmek çok önemli:
Bu özellik, overflow özelliği görünür olandan başka bir şey değilse, çoğu öğe için varsayılan değilse hiçbir şey yapmaz. Genel olarak bunu kullanmak için taşma gibi bir şey ayarlamanız gerekir: scroll;
Sara Cope'den alıntı, http://css-tricks.com/almanac/properties/r/resize/
CSS'de ...
textarea {
resize: none;
}
İki şey buldum:
İlk
textarea{resize: none}
Bu, henüz yayınlanmamış bir Firefox 4 (ve üstü), Chrome ve Safari ile uyumlu bir CSS 3'tür .
Başka bir biçim özelliği, dir niteliğini overflow: auto
dikkate alarak sağ kaydırma çubuğundan kurtulmaktır .
Temel HTML
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<textarea style="overflow:auto;resize:none" rows="13" cols="20"></textarea>
</body>
</html>
Bazı tarayıcılar
CSS 3, UI öğeleri için bunu yapmanızı sağlayacak yeni bir özelliğe sahiptir. Özellik, yeniden boyutlandırma özelliğidir . Böylece, tüm metin alanı öğelerinin yeniden boyutlandırılmasını devre dışı bırakmak için stil sayfanıza aşağıdakileri eklersiniz:
textarea { resize: none; }
Bu bir CSS 3 özelliğidir; tarayıcı uyumluluğunu görmek için bir uyumluluk tablosu kullanın.
Şahsen, textarea unsurlarında yeniden boyutlandırmanın devre dışı bırakılmasını çok can sıkıcı bulurdum. Bu, tasarımcının kullanıcının istemcisini "kırmaya" çalıştığı durumlardan biridir. Tasarımınız daha büyük bir metin alanını barındıramazsa, tasarımınızın nasıl çalıştığını yeniden düşünmek isteyebilirsiniz. Herhangi bir kullanıcı ekleyebilirtextarea { resize: both !important; }
tercihinizi geçersiz kılmak için kullanıcı stil sayfasına .
texarea
<textarea style="resize:none" rows="10" placeholder="Enter Text" ></textarea>
Derin desteğe ihtiyacınız varsa, eski bir okul tekniği kullanabilirsiniz:
textarea {
max-width: /* desired fixed width */ px;
min-width: /* desired fixed width */ px;
min-height: /* desired fixed height */ px;
max-height: /* desired fixed height */ px;
}
resize:none
bu çözümle, alt köşede tutamağın sinir bozucu bir şekilde çalışmadığını önlemek için kullanın .
Bu HTML'de kolayca yapılabilir:
<textarea name="textinput" draggable="false"></textarea>
Bu benim için çalışıyor. Varsayılan değer true
için draggable
öznitelik.
Resize özelliğini devre dışı bırakmak için aşağıdaki CSS özelliğini kullanın:
resize: none;
Bunu şu şekilde satır içi stil özelliği olarak uygulayabilirsiniz:
<textarea style="resize: none;"></textarea>
veya şu şekilde <style>...</style>
öğe etiketleri arasında :
textarea {
resize: none;
}
resize: none;
CSS'nizde sadece şunu kullanırsınız .
Boyutlandırma özelliği belirtir bir eleman Kullanıcı boyutunu olup olmadığını.
Not: resize özelliği, hesaplanan taşma değeri "görünür" dışında bir öğe olan öğeler için geçerlidir.
Ayrıca yeniden boyutlandırma şu anda Internet Explorer'da desteklenmemektedir.
Yeniden boyutlandırma için farklı özellikler şunlardır:
Yeniden Boyutlandırma Yok:
textarea {
resize: none;
}
Her iki yolu da yeniden boyutlandırın (dikey ve yatay):
textarea {
resize: both;
}
Dikey olarak yeniden boyutlandır:
textarea {
resize: vertical;
}
Yatay olarak yeniden boyutlandır:
textarea {
resize: horizontal;
}
Ayrıca varsa width
ve height
sizin CSS veya HTML, daha geniş bir tarayıcılar desteği ile, sizin textarea yeniden boyutlandırılır önleyecektir.
CSS 3 bu sorunu çözebilir. Ne yazık ki, günümüzde kullanılan tarayıcıların yalnızca % 60'ında desteklenmektedir .
Internet Explorer ve iOS için size yeniden boyutlandırma kapatamazsınız, ancak sınırlayabilir textarea
onun ayarlayarak boyut width
ve height
.
/* One can also turn on/off specific axis. Defaults to both on. */
textarea { resize:vertical; } /* none|horizontal|vertical|both */
Sadece edebilirsiniz textarea devre dışı böyle özellik:
textarea {
resize: none;
}
Dikey veya yatay yeniden boyutlandırmayı devre dışı bırakmak için
resize: vertical;
veya
resize: horizontal;
Yeniden boyutlandırma özelliklerinin nasıl çalıştığını göstermek için küçük bir demo oluşturdum. Umarım size ve başkalarına da yardımcı olacaktır.
.resizeable {
resize: both;
}
.noResizeable {
resize: none;
}
.resizeable_V {
resize: vertical;
}
.resizeable_H {
resize: horizontal;
}
<textarea class="resizeable" rows="5" cols="20" name="resizeable" title="This is Resizable.">
This is Resizable. Lorem ipsum, or lipsum as it is sometimes known, is dummy text used in laying out print, graphic or web designs. The passage is attributed to an unknown typesetter in the 15th century who is thought to have scrambled parts of Cicero's De Finibus Bonorum et Malorum for use in a type specimen book.
</textarea>
<textarea class="noResizeable" rows="5" title="This will not Resizable. " cols="20" name="resizeable">
This will not Resizable. Lorem ipsum, or lipsum as it is sometimes known, is dummy text used in laying out print, graphic or web designs. The passage is attributed to an unknown typesetter in the 15th century who is thought to have scrambled parts of Cicero's De Finibus Bonorum et Malorum for use in a type specimen book.
</textarea>
<textarea class="resizeable_V" title="This is Vertically Resizable." rows="5" cols="20" name="resizeable">
This is Vertically Resizable. Lorem ipsum, or lipsum as it is sometimes known, is dummy text used in laying out print, graphic or web designs. The passage is attributed to an unknown typesetter in the 15th century who is thought to have scrambled parts of Cicero's De Finibus Bonorum et Malorum for use in a type specimen book.
</textarea>
<textarea class="resizeable_H" title="This is Horizontally Resizable." rows="5" cols="20" name="resizeable">
This is Horizontally Resizable. Lorem ipsum, or lipsum as it is sometimes known, is dummy text used in laying out print, graphic or web designs. The passage is attributed to an unknown typesetter in the 15th century who is thought to have scrambled parts of Cicero's De Finibus Bonorum et Malorum for use in a type specimen book.
</textarea>
İle @style
özel bir boyut verebilir ve yeniden boyutlandırma özelliğini devre dışı bırakabilirsiniz (resize: none;)
.
@Html.TextAreaFor(model => model.YourProperty, new { @style = "width: 90%; height: 180px; resize: none;" })
JQuery ile de deneyebilirsiniz
$('textarea').css("resize", "none");
Tümü için yeniden boyutlandırmayı devre dışı bırakmak için textarea
:
textarea {
resize: none;
}
Belirli bir boyutta yeniden boyutlandırmayı devre dışı bırakmak için textarea
bir özellik name
veyaid
ve bunu bir şeye ayarlayın. Bu durumda, adlandırılırnoresize
<textarea name='noresize' id='noresize'> </textarea>
/* Using the attribute name */
textarea[name=noresize] {
resize: none;
}
/* Or using the id */
#noresize {
resize: none;
}
Eklemek !important
onu çalıştırır:
width:325px !important; height:120px !important; outline:none !important;
outline
sadece belirli tarayıcılarda mavi çerçeveden kaçınmaktır.
!important
Özniteliği kötüye kullanmayın . CSS özelliği resize: none
yeniden boyutlandırma özelliğini kaldırabilirse genişliği ve yüksekliği düzeltmek için anlamsızdır
!important
Kötü değil mi?