Ross Alex, ну так если всё сводится к размеру вьюпорта, то это исключительно CSS - делаем @media(max-width:640px){....
@media(max-width:1000px){...
и тд.
подставляем нужные изображения.
ну, или через JS - нужно только спросить у клиента ширину его окна через window.innerWidth,
седлать выводы и подставить нужные значения в DOM
я бы не увлекался этим Google Pagespeed Insights
сомнительное писькомерство.
все мои сайты загружаются и готовы к работе менее чем через секунду,
но по мнению гугла, эти сайты хуже, чем те, которые загружаются по 3-5 секунд
для удовлетворения необъективных тестов нужно нагружать документы избыточным кодом?
в странное время мы живём - раньше, хорошим тоном было не делать инлайн-оформление,
теперь от нас требуют наоборот, делать контент неотделимым от представления - это бред!
получить наследников, которых не нужно удалять,
сохранить их, создав новые узлы,
удалить родителя, вставить на его место новые узлы.
т.е. вам нужно смотреть на: nextElementSibling и previousElementSibling
нужен ориентир - сосед родителя, который будет удалён.
когда знаем "соседа", после него или перед ним можно вставить то, что было получено через cloneNode()
у вас в $comment = $_POST['comment']; могут любую дичь запихнуть. (как и в любое поле)
при открытии такого письма, не удивляйтесь, что почтовый клиент себя странно ведёт.
добавьте хотя бы минимальные меры предосторожности при обработке данных из формы
суслику побольше назначаем роль папы,
суслику поменьше запрещаем расти больше, чем 100% от размера папы, чтобы всем было сразу ясно кто тут папочка! :D
honeydrums, вопрос не по теме, но интересно стало: а чем в данном случае классы лучше и почему нельзя использовать идентификаторы?
ведь, если таких кнопок только две, то разумнее создать два описания: #glaz_top и #glaz_bottom
window.scrollTo тут вообще не годится, ибо это про документ, а не блок (который может быть где угодно),
но главное, что вопрос был про значение параметра behavior:'smooth',
который так же не работает в *chrome под виндой.
Евгений Залецкий, mousedown, это только половина клика - за ним может последовать перетаскивание или выделение и тогда mouseup в этом контексте не будет отработан как клик по ссылке.
можно изображение перевести в Base64 и применить прямо из CSS к фону бордера.
можно написать сложную функцию, которая будет строить график из произвольных данных,
а затем из этого графика рисовать 100500 градиентов применённых к фону бордера.
по трудозатратам самое простое решение, это изображение, пусть и в виде Base64 в вашем CSS
вы берёте инпут в качестве объекта.
но, кмк., задача то стоит взять значение из инпута, не?
и пожалуйста, закрывайте теги, даже если это не обязательно - кто знает где баг спрятался ;)
index.js лежит в корне чего? диска или хоста? ;)