• Сколько времени должна занимать верстка этой страницы у опытного верстальщика?

    SerzN1
    @SerzN1
    Challenge me!
    опытный верстальщик по 1 попапу выбора города мог бы заметить что там скорее всего ie6+, и открыв код можно убедиться в этом

    так что ответ этот вопрос не 8 часов + адаптивность, а как для мамонтов минимум 3 дня без всякой адаптивности
    + коммуникации , время на проверку и доработки
    + если адаптивность под таких мамонтов то еще немного дольше

    ПС: делать на фреймворках высоконагруженные сайты - это полный мажертон, если только там не море плагинов оптимизаторов для сборки проекта
    Ответ написан
    Комментировать
  • Как сделать такую кнопку?

    SeaInside
    @SeaInside
    15 лет пилю все эти штуки
    Жму руку дизайнеру, молодец, не как у всех.

    Прямо так, как на скриншоте, на чистом CSS вряд ли получится, ибо левый нижний угол строго вертикальный, а вот правый... вообще с трудом такую фигуру представляю в реальности, поэтому вариант с трансформацией средствами браузера тут отпадает.

    Изначально я не обратил внимания, что нижний край строго горизонтальный, и накидал такое как стартовую точку



    Но когда заметил - понял, что так в принципе не выйдет сделать, на CSS нельзя "зафиксировать от трансформации" две стороны сразу.

    Так что остаётся вариант с фоновой SVG-шкой, что по сути "фоновая картинка", либо вариант со вставкой этой SVG напрямую в кнопку (прям инлайном) и дальнейшие манипуляции с ней, если требуется адекватный ховер.

    Делать лень, это нетрудно :)
    Ответ написан
    2 комментария
  • Почему gulp-imagemin очень плохо сжимает файлы?

    landen13
    @landen13
    frontend-developer
    для сжатия jpg используйте imagemin-jpeg-recompress
    для сжатия png - optipng/pngquant
    Ответ написан
    Комментировать
  • Нужно сделать ссылку не кликабельной! Какой способ лучше всего подойдет?

    0xD34F
    @0xD34F
    Можно так:

    <a href="https://toster.ru" onclick="return false">link</a>

    Или так:

    a.disabled {
      pointer-events: none;
    }

    <a href="https://toster.ru" class="disabled">link</a>
    Ответ написан
    3 комментария
  • Какое адекватно решение создания кастомного чекбокса с ссылкой внутри label?

    profesor08
    @profesor08 Куратор тега CSS
    1. В label не должно быть блочных элементов
    2. В label не должно быть ссылок

    В приведенном коде нарушаются оба пункта. Надо сделать так, чтоб в label не было подобных элементов.

    Вывод: надо обновить требования, чтоб они соответствовали возможностям и спецификации HTML. Если потребуется доработать дизайн.
    Ответ написан
    3 комментария
  • В чем "вкус" react?

    @12rbah
    В связи с этим у меня вопрос, чем же обоснована такая популярность этой библиотеки у работодателей?
    Если вы программируете 3 месяца то скорее всего не поймете. React или другой фреймворк изначально подразуевает то, что код хорошо делится по модулям и компонентам, что очень удобно, в обычном js нужно принимать больше усилий чтобы добиться этого. Также есть много готовых решений из коробки, которые уже были отлажены другими более опытными людьми.
    а модульность со мной сыграла злую шутку (прочитал, что хорошим тоном считается разбивать проект на мельчайшие модули, разбил свой, через пару недель я просто почти забыл, что от чего у меня зависит и какой модуль у меня что тянет за собой и главное куда тянет!
    Видимо вы попробовали выучить реакт за неделю, потом потом на 2-3 недели ушли заниматься своими делами и не трогали его и "внезапно" всё забыли. В целом можно писать комментарии для пояснения. Модульность как раз наоборот упрощает чтение кода и если правильно всё называть и прописывать, то в небольших проектах до 5-10к строк можно будет без проблем разобраться за пару дней тому кто не писал это код.
    P.S. Возможно вам лучше выложить вопрос с сылкой на ваш проект и вам подскажут что не так вы сделали, будет полезнее.
    Ответ написан
    Комментировать
  • Зачем нужен вебпак простым языком?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Вебпак - сборщик. Может взять много файлов и собрать в один. Ну или в несколько, как мы настроим. В js действительно есть модули, которые как бы уже нативно работают в современных браузерах, но есть ряд проблем:

    • Файлов с кодом может быть много. Сотни. Если использовать нативные импорты и загружать сотни файлов в браузер одновременно - накладные расходы будут заметными. Было бы хорошо уменьшить количество файлов. Плюс там могут быть не только скрипты, но и другие файлы, которых тоже может быть много.
    • Большое количество инструментов были написаны еще до появления нативных модулей в JS. Они все еще работают, выполняют свои задачи, но простым словом import их не импортировать. Там очень разные чудеса встречаются. Придумывать для каждого инструмента персональный костыль, как его импортировать, вроде как не хочется.
    • К предыдущему - иногда удобно в скрипты на JS импортировать что-то не на JS из отдельных файлов. В контексте моей работы - шейдеры на GLSL. Их нельзя просто так нативным import загрузить.
    • Часть зависимостей мы ставим с помощью npm. Это удобно. Но мы легко получаем папку node_modules на сотни мегабайт, при том, что в нашем проекте реально используется пара файлов оттуда. Загружать все это целиком на сервер - зачем? Ставить зависимости, а потом копировать нужные файлы откуда-то из глубин node_modules к себе в проект? Можно, но не то, чтобы удобно. Обновлять сложно будет, да и действий лишних что-то много.
    • Не всегда нам нужен полный функционал инструментов, которые мы используем. Часто в пример приводят lodash. Там много готовых функций на разные случаи жизни, но все используются редко. Было бы прям здорово в браузер загружать только то, что там на самом деле будет использоваться. А то, что не используется - не загружать.


    Как-то так. То есть нативные модули - это здорово. Но они далеки от совершенства. Не все проблемы решают. Поэтому сборщики все еще актуальны. И будут актуальны еще долгое время.

    Плюс webpack имеет возможность встроить в процесс сборки дополнительные процессы, которые долго делать руками. Код можно минифицировать. Уменьшит время загрузки страниц. Можно запустить w3c validator, stylelint, eslint, sonar и.т.д. - всякие проверялки, чтобы убедиться, что к пользователям улетит валидный код. Можно какие-то картинки сжать, сконвертировать в другие форматы. Можно typescript превратить в javascript, less, sass и.т.д. - в css. Много чего можно сделать. В целом сборщик сам по себе - это перпендикулярный ко всем этим процессам инструмент. И раньше люди использовали отдельный класс инструментов, чтобы запускать все это - таск раннеры. Grunt, gulp - вы скорее всего про них слышали. Можно писать npm-скрипты или даже по старинке делать makefile под сложную сборку. Но в webpack вроде как есть функционал плагинов, и можно эти процессы запускать и через него тоже. Вроде как он не для этого изначально придуман, но многие люди находят удобным иметь все в одном месте.
    Ответ написан
    Комментировать
  • Как начать заниматься "серьезной" разработкой?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Владею стеком HTML/CSS/JS, Python+django/fastApi, java(для математики всякой)


    Также хоббийно занимаюсь микроэлектроникой(avr/nrf/stm)

    Выглядит как активность эникейщика. Первая предметная область, связанная с фронт-вебом - сегодня очень сложна. И чтобы по настоящему расти - надо отдаваться ей на 100%. Иначе эффекта не будет.

    Я не хочу говорить что ты распыляешся, но резюме выглядит как, как будто ты еще находишся в творческом поиске и давать тебе какие-то проекты еще рано. Может тебе имеет смысл еще погулять пару лет и после этого просто "зачистить" свою анкету от посторонних мешающих хеш-тегов.

    Я сам так сделал и не жалею. Всякие Photoshop/3DMax/радио-и-связь/игра на трубе/вязание крючком - заказчика не интересуют а вобщем даже и раздражают. Под позицию нужен профессионал а не разно-рабочий.

    UPD:
    Ответ написан
    Комментировать
  • Как сделать отступ между тремя цифрами?

    Old_Chroft
    @Old_Chroft
    Не нужен тут JQuery. Чистый JS вполне умеет:
    // тут любым способом получаем значение инпута id="my_input"
    var myNumber = document.getElementById("my_input").value;
    // преобразуем значение в число, устанавливаем локаль и "вертаем" его обратно в input id="my_input"
    document.getElementById("my_input").value = Number.parseInt(myNumber).toLocaleString('ru');
    Ответ написан
    Комментировать
  • Как скрыть Pull Request от других пользователей?

    sergey-kuznetsov
    @sergey-kuznetsov Куратор тега Git
    Автоматизатор
    Вы наверное хотите скрыть не сам Pull Request, а код, который виден там.
    Но ведь этот код студенты отправляют из своих открытых проектов в ваш открытый проект. Значит код в любом случае виден всем в интернете, причем даже без создания PR.
    Единственный способ скрыть код — публиковать его в закрытые проекты.
    Пусть студенты создают приватные репозитории и дают вам доступ туда.
    Ответ написан
    Комментировать
  • Как программно уменьшить область просмотра в браузере?

    imko
    @imko
    Senior Scratch Developer
    Медиа запросы с rem вместо px и изменение шрифта в корне при переключении видов?
    Ответ написан
    1 комментарий
  • Как правильно задать регулярные выражения html атрибута pattern?

    gobananas
    @gobananas
    finishhim.ru
    Телефон
    [0-9\s-+_\.\(\)\[\]]{5,18}
    Текст, тут регулярки-то по сути нет, допустим
    [^~]{2,100}
    Ответ написан
    2 комментария
  • Отличия GET от POST?

    NikFaraday
    @NikFaraday
    Student full-stack Developer
    UPD: пример ниже приведён для MVC архитектуры. API выдаёт данные, а не страницы. HttpGet - это получение информации от сервера. HttpPost - отправка информации на сервер. Основная разница в тому, что Post запрос имеет тело запроса, в котором можно передавать сложные структуры. Get запрос может передавать данные через строку запроса

    HttpGet и HttpPost это два стандартных типа запроса. Так же есть HttpPut, HttpDelete и некоторые другие, основные из каких я перечислил сначала.

    Разница между HttpGet и HttpPost в очень простом виде:
    HttpGet - выдача сервером какой-то информации клиенту. Для примера, сервер отдаёт какую-то информацию, допустим, имя и логин пользователя, который зашёл на сайт, для того, что бы отобразить её где-то на странице. Так же Get запрос может отдавать целые страницы в формате HTML или других форматах. По факту, большинство страниц, что вы видите в браузере, включая эту, была передана нам в браузер от сервера путём выполнения запроса. Такая информация передаётся как HttpGet.

    HttpPost - это отправка данных на сервер. Любая. Когда вы регистрируетесь на сайте, ваши данные отправляются с использованием HttpPost запроса. Когда вы делаете изменения личной информации, обновлённые данные отправляются как HttpPost, хотя в REST API принято такой запрос помечать как HttpPut. Тут речь идёт об отправке сложных структур данных, возможно, фотографий, видео, аудио, информации о местонахождении, контактные данные. Т.е., другими словами, когда вы сервер уведомляете о какой-то новой информации.

    Стоит отметить, что редирект через url является HttpGet запросом. Если вы просто делаете переадресацию на какую-то страницу и в url передаёте id клиента (Для примера), что бы на странице сведений вывести его данные (Опять же, чисто для примера), это НЕ HttpPost запрос, это просто редирект. Потому что вы не обновляете никакую информацию. Когда вы обращаетесь к серверу с просьбой отрисовать/отрендрить страницу и передаёте туда id клиента, сервер отдаёт ответ на HttpGet запрос, который имеет разметку самой страницы.

    Иными словами, HttpGet запрос, это то, когда сервер должен отрисовать новую разметку или вернуть какие-то данные в некотором формате (В основном JSON для API). Может выполняться несколько запросов, если вы во время регистрации на сайте отправляете данные, делается сначала HttpPost запрос с отправкой ваших данных, а потом HttpGet, когда у вас рендрится новая страница, на которую вас перекинуло.

    Так же есть HttpPut - аналогия HttpPost, разницы нет почти никакой. Обычно используется для обозначения запроса на обновление информации, т.к. HttpPost должен работать как запрос на создание. Тот же пример HttpDelete - когда нужно удалить информацию.
    Ответ написан
    11 комментариев
  • Как лучше переформировывать таблицу на мобильном разрешении?

    Aldadis
    @Aldadis
    Через data атрибуты, например так
    Пример
    Ответ написан
    Комментировать
  • Как можно максимально себя анонимизировать в сети?

    Adamos
    @Adamos
    Что же делать!?

    Выключить компьютер, выйти на прогулку, подышать свежим воздухом, отвлечься, вернуться.
    Взять лист бумаги и ручку и подробно, по пунктам, расписать причины, по которым ты считаешь это проблемой.
    Ответ написан
    21 комментарий
  • Ссылочный тип данных JavaScript?

    @gracer
    В первом случае вносятся изменения в объект arr, соответсвенно, раз в newArr хранится ссылка на объект arr, то и newArr меняется. Во втором переменной arr просто присваивается новое значение.
    Ответ написан
    Комментировать
  • Как переустановить Windows 10 удалённо?

    @sazhyk
    Наиболее оптимальный для вас вариант - "переустановка через скайп". Подойдет любой видеочат. Думаю суть ясна. Удаленный юзер ставит свой, например, смартфон так, что вы видите всё происходящее и говорите, что тыкать и куда. Главное, чтобы юзер сумел сам записать установочную флешку с десяткой. Благо, там всё предельно просто. Тынц.

    Владислав Лысков
    Возможно ли переустановить windows удалённо без флешки и диска?!
    конечно же нет

    Сугубо технически - можно, и ещё как. IPMI - погуглите и поймете. ТС, с огромной долей вероятности вам этот способ не подойдет. Тем не менее, он полностью подходит под ваш вопрос.
    Ответ написан
    6 комментариев
  • Как переустановить Windows 10 удалённо?

    Возможно ли переустановить windows удалённо без флешки и диска?!

    конечно же нет
    Ответ написан