Я и поставил 100%, когда обернул в контейнер. Но я в идеале хотел без контейнера, а в этом случае 100 процентов означало бы весь экран и даже больше (если только не изменить box-sizing на border-box).
>Там слишком много js, чтобы огульно запускать его у себя
Эм, что, простите? А в чём проблема-то? Боитесь кражи ваших кук?) Так файл-то локальный, а куки читаются только с того домена, на котором скрипт расположен...
>К тому же на ваш хостинг ругается мой браузер
Так я же локальный HTML файл скинул. То, что ваш браузер ругается на один из крупнейших файлообменников (с довольно приличной репутацией, кстати) - это уже Ваши проблемы, извините.
>Я посмотрел ваш HTML
Извините, как вы посмотрели HTML, если не стали скачивать файл? А как узнали, что там много JS, значит всё-таки скачали? :)
Вредоносного кода там нет, там лишь идёт попытка загрузить данные комнаты, которые недоступны (поскольку Вы не залогинены, и поскольку файл запускается локально, а не на сервере проекта).
>Я уверен на 99% что оно там совершенно не требуется. Пришлите скриншот как правильно должна выглядеть ваша форма.
Я же не спорю, что можно без него, но тогда придётся городить много лишних контейнеров. Имхо, это не лучший путь...
>Пришлите скриншот как правильно должна выглядеть ваша форма
Так же, как сейчас, но поле должно идти до кнопок справа. Или вы таки не смотрели страницу?
Владислав Поляков: или как альтернативный и громоздкий вариант, но не требующий поддержки querySelector и XHR2 (для совсем старых браузеров) - получить обычный responseText, а потом использовать это: https://developer.mozilla.org/en-US/docs/Web/API/D... В современных Firefox и Chrome работает "из коробки", для некоторых других браузеров там предложен полифил в конце статьи.
Андрей Федоров: а смысл мне родительскому div давать padding? Вы смотрели разметку? Там есть две квадратные кнопки справа, вообще вне формы, они относительно родительского контейнера позиционируются абсолютно. Высота формы, судя по инспектору, определяется автоматически по контенту (по единственному элементу, который имеет высоту, и позиционируется не абсолютно, то есть в стандартном потоке идёт).
Так что мне нет смысла внутри формы, которая растягивается на всю ширину, использовать padding. Хотя конечно я бы мог это сделать. Мне проще позиционировать эту обёртку абсолютно - даже не относительно формы, а относительно её предка с position: absolute, который по ширине с ней совпадает :)
Меня вот удивляет другое: изначально для textarea была задана ширина как width: 50%. Теперь я в инспекторе любого браузера снимаю галку с этого свойства... И почему-то ширина остаётся прежней! Хотя должна бы как-то поменяться, по логике вещей.
Андрей Федоров: нет, не так, родительскому div я дал left и right, как и хотел.
С чего Вы взяли, что я не вижу разницы между блочными, и инлайн элементами? Странные у Вас какие-то выводы.
Например, тот же img легко можно заставить себя вести как блочный элемент, хотя по умолчанию он inline-block. Но тем не менее, для него автоширина по left и right тоже не вычисляется...
Так конкретную выдержку из стандартов Вы можете указать, которая пролила бы свет на то, почему для div это работает, а для других элементов - нет?
Андрей Федоров: я допускаю, что там можно всё сверстать иначе... Но это потребует кучи вложенных элементов, которые семантически не нужны. То есть лишняя разметка, которая хуже читается, и даёт большую нагрузку на слабые мобильные девайсы... Я-то привык минимумом элементов обходиться (возможно, это и не правильно).
Андрей Федоров: на самом деле, я уже нашёл решение минуты две назад сам... Но было бы классно, если бы Вы объяснили, почему происходит именно так. Желательно в стандарты носом ткнуть :)
Андрей Федоров: не совсем, насколько я помню, в случае display: inline-block будет по содержимому, а в случае display: block - на всю ширину родителя. В данном случае у меня display: block стоит. Но я сейчас даже не про width: auto. Что не так с автоподгонкой ширины по left и right?..
Ссылку на код я уже прикрепил к исходному сообщению.
Андрей Федоров: так это ничего не изменит, если задать ширину в процентах, она будет в процентах. Я же объясняю, автоподстройка не работает, а calc() работает не во всех браузерах, мне нужна поддержка старых Опер и старых IE (и при этом поля в пикселях). Почему не работает автовычисление, вот в чём вопрос. Потому что textarea?
P. S. Сейчас проверил с элементами img и button - всё то же самое. Как так? При задании left и right всё должно работать как нужно...
Владислав Поляков: А ведь есть же решение без использования JQuery? Вроде как, можно сразу получить не текст, а DOM дерево, XHR2 что-то такое умеет... Верно?
Lander: сорри за совет не в тему, но имхо, намного проще было бы реализовать подобное на Java (можно даже на обычной, десктопной). Хотя, такое конечно хостить чуть сложнее :)
Евгений Тройнов:
>Кодер не познавший мантру консоли и Unix не кодер.
Извините, но это бред. Зачем консоль, зачем Unix? Не путайте сисадмина и программиста. Задача программиста - писать код, особенно если мы про фронтендера. Если человек работает исключительно с HTML/CSS/JS, зачем ему Unix и консоль? Править конфиги серверов? Так для этого крупные компании отдельного специалиста как правило держат. Невозможно знать всё)
Не говоря уже о том, что я солидарен с человеком выше - консоль даже с самым крутым консольным редактором менее удобна и функциональна, чем IDE.
xtreme: с чатом мысль красивая, но мы не можем быть на связи 24/7 =) Насчёт того, что по почте - ну разве это не очевидно для пользователя, если форма находится прямо на главной странице и не требует регистрации, чтобы её использовать? :) И имеет поле для адреса. Кроме того, у нас там в плейсхолдере написано, что на этот адрес мы ответ вам отправим :) Видимо, возраст нашей аудитории таков, что не все внимательно читают просто.
Насчёт влетания в Спам - ну раньше так не было, раз это много кто делал, сейчас возможно вы правы, правила ужесточились. Мне казалось, почтовые системы как-то ещё умеют отличать просто письма с некого домена от писем, на которые ты подписался. То есть там может стоять какой-то алгоритм, срабатывающий на самое первое письмо, отправленное при регистрации, ищущий там ключевые слова (вроде "подписались", "подписан"), и добавляющие этот адрес в белый список :) Ну это моя придумка конечно, но те крупные сервисы наверное рассылают свои рассылки именно полагаясь на что-то похожее.
По пункту 4: я лично такое видел на зарубежных сервисах, в 60-70 процентах случаев. Что будет, если всё-таки ввести капчу (ну или просто кнопку, которую надо физически кликнуть)? Хотя вариант с уникальным хэшем мне и самому пришёл в голову: по такой схеме часто осуществляется беспарольная авторизация при переходе по ссылке из письма (на всяких развлекательных сайтах и дейтингах).
По пункту 5 - а куда они приходят? На ящик, что в заголовке Unsubscribe указан (или как его там)?
По пункту 6 - радует, что это задача сисадмина, я уже боялся, что подписывания письма электронной подписью необходимо делать прямо на PHP при его формировании :)
P. S. Часто сталкивался с глупейшей проблемой - есть форма обратной связи, юзер задаёт вопрос, а ящик для ответа указывает левый (ну не у всех хватает сообразительности, что для своей же пользы нужно реальный указать). Мы потом пишем ответ (наш саппорт) - а письмо не доходит из-за невалидного адреса, возвращается ошибка от демона.
Хорошо хоть в случае с рассылкой по базе проще: обычно при регистрации сайты заставляют кликнуть ссылку, отправленную на e-mail, и он таким образом верифицируется.