09.07.2016, 11:16
|
Интересующийся
|
|
Регистрация: 08.09.2012
Сообщений: 10
|
|
когда уже сделают нормальный <textarea>
Я познакомился с HTML ещё на заре рунета, и ещё тогда, много лет назад, едва только освоившись в языке, я был вдохновлён безграничными возможностями JavaScript в отношении работы с визуальным оформлением документа и, конечно же, сразу попытался сделать какое-нибудь подобие Word.
Не тут-то было. Первым обескураживающим открытием было, что для ввода текста существует всего один элмент, <textarea>, который, при этом, нифига не умеет. Второе, что этот элемент, оказывается, почти невозможно и научить чему-либо на самом деле полезному: он настолько допотопный, что даже элементарное - ввести символ \tab или выделить слово жирным шрифтом приходится громоздить через такую жопу, что на деле, навесив ещё пару-тройку черезжопных заплаток на этого трилобита, на практике пользоваться созданным исчадием оказывается сущее мучение.
Прошло уже несколько лет, на дворе 5-я генерация HTML - и что я вижу? Вам и видео, и звук, и хз ещё какие выкрутасы, а самого нужного, основы, того, через что вообще создаётся весь контент гипертекста - нормального текстового процессора - до сих пор как не было, так и нет! И даже намёка, хоть мало-мальского намёка, даже словом не обмолвлено что, мол, надо бы что-нибудь сделать для ввода текста посерьёзнее. Ни-че-го, вообще, как будто проблемы такой вообще не существует!
.. Я прокручивал на экране релиз HTML5, бегло просматривая заголовки и выхватывая отдельные значимые фразы. Глаза жадно искали слова text, format, visual, секции описаний новых свойств и методов элементов.. но с каждой строчкой, с каждой страницей, сердце сжималось всё сильнее и уходило куда-то вниз.. Я уже видел, я уже понимал,что это за документ у меня перед глазами, понимал - но не мог в это поверить. Когда-то сформировавшееся впечатление о W3C как о нечто загадочном, мудром и надёжном, противостоящем блеску дешёвых украшательств и суетливой активности жадных до наживы дельцов, рушилось на глазах. Куда движется мир, куда движется интернет!..
Выход 5-го HTML и пришедшее понимание, куда именно они движутся, забил последний гвоздь в крышку гроба моих надежд. Похоже, нормального <textarea> нам теперь не скоро увидеть...
|
|
09.07.2016, 13:00
|
Профессор
|
|
Регистрация: 12.04.2010
Сообщений: 557
|
|
Сообщение от boor1
|
Глаза жадно искали слова text, format, visual, секции описаний новых свойств и методов элементов..
|
Не те слова ты искал. Надо было contenteditable)
|
|
10.07.2016, 01:26
|
Профессор
|
|
Регистрация: 17.06.2016
Сообщений: 509
|
|
Яростный Меч,
|
|
10.07.2016, 22:25
|
|
Профессор
|
|
Регистрация: 24.09.2013
Сообщений: 1,436
|
|
|
|
10.07.2016, 22:47
|
|
Профессор
|
|
Регистрация: 20.12.2009
Сообщений: 1,714
|
|
Самое неожиданное для некоторых в <textarea> то, что стиль display: block якобы никак не действует правильно
Получается типо ещё приписано...
max-width: 170px;
max-height: 30px;
overflow: auto;
И где тут display: block, когда приходится вручную изменять размеры?
P. S.
http://lea.verou.me/2015/07/stretchy...-it-should-be/
Не нужно бы было, если display: block работал с textarea как надо
Последний раз редактировалось Malleys, 04.06.2019 в 15:48.
Причина: Исправил грамматическую ошибку
|
|
13.08.2016, 07:20
|
Профессор
|
|
Регистрация: 08.07.2016
Сообщений: 1,332
|
|
Это же какое счастье, что w3c не поддается дешевым понтам веб-дизайнеров, желающих превратить веб в подмножество приложений Микрософт офисе.
Ну скажи мне поэт от сохи, зачем тебе rich text object на веб-странице, если всё форматирование делается в html и css, то есть открытым кодом.
Какой ты видишь девушку оператора машинного добавления записей в бд, которая рисует своими холеными ручками <style>.h1 span {font-size:1.15rem}</style> или там style="position:absolute".
На вебе все очень просто. Или ты знаешь html, или ты экспортируешь html, или ты заказываешь html. Кому не нравится, тот юзает pdf
|
|
13.08.2016, 07:22
|
Профессор
|
|
Регистрация: 08.07.2016
Сообщений: 1,332
|
|
Malleys, ты вообще о чем? Текстовые поля ввода не понимают никакого хтмля, для них любые теги - просто текст и это счастье, что не хз какой-то там болд или параграф, поскольку все остается под контролем.
|
|
17.08.2016, 07:52
|
|
Профессор
|
|
Регистрация: 15.10.2014
Сообщений: 255
|
|
Есть же Rich Text Editor он полностью на js сделан. Вставлял к себе его на странички. Вот тут есть его демка http://bjtools.tiddlyspot.com/
надо нажать зеленый плюс для добавления статьи и в Type выбрать самую верхнюю строчку text/x-perimental
|
|
17.08.2016, 10:45
|
Профессор
|
|
Регистрация: 08.07.2016
Сообщений: 1,332
|
|
А он хотел без js. И чтобы во всех браузерах было заедино. Нажал В и вставился <b>, а не <strong> какой-нибудь и подавно не <span style="font-weight:700">
PS Пусть попробует из ворда экспортировать в хтмл и посмотрит коды, сразу расхочется текстового процессора на вебе.
|
|
04.06.2019, 16:32
|
|
Профессор
|
|
Регистрация: 20.12.2009
Сообщений: 1,714
|
|
Сообщение от warren buffet
|
Malleys, ты вообще о чем? Текстовые поля ввода не понимают никакого хтмля, для них любые теги - просто текст и это счастье, что не хз какой-то там болд или параграф, поскольку все остается под контролем.
|
Я о том, что <textarea> имеет замещаемое содержимое. Сравните, как меняются размеры элемента, при вводе текста... (этот тестовый пример работает только в Chrome, Edge и Safari)
<textarea placeholder="ввод текста"></textarea>
<my-textarea placeholder="ввод текста"></my-textarea>
<style>my-textarea {
-webkit-appearance: textarea;
-webkit-user-modify: read-write-plaintext-only;
background-color: white;
-webkit-rtl-ordering: logical;
flex-direction: column;
resize: none;
cursor: text;
white-space: pre-wrap;
overflow-wrap: break-word;
border-width: 1px;
border-style: solid;
border-image: initial;
padding: 2px;
text-rendering: auto;
color: initial;
letter-spacing: normal;
word-spacing: normal;
text-transform: none;
text-indent: 0px;
text-shadow: none;
display: block;
text-align: start;
margin: 0em;
font: 400 13.3333px Arial;
font-family: monospace;
border-color: rgb(169, 169, 169);
margin: 1em 0;
max-width: 20em;
}
my-textarea:empty::before {
content: attr(placeholder);
-webkit-text-security: none;
color: rgb(117, 117, 117);
pointer-events: none !important;
}</style>
Я к тому, что размеры <textarea> не зависят от его содержимого, даже когда явно указано resize: none;, overflow: visible;...
|
|
|
|