Задать вопрос
  • Почему не отображается картинка в css?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    Не работает, потому что вы в backgroung-image кроме картинки понаписали ещё кучу всего.
    Пишите либо всё в сокращенное свойство либо всё по отдельности. А не кашей, как сейчас.

    64a945c2293e0370666866.jpeg
    Ответ написан
    Комментировать
  • Почему JS не находит нужный элемент?

    Ankhena
    @Ankhena Куратор тега CSS
    Нежно люблю верстку
    При такой структуре разметки вам не нужен для этого JS.

    Поменяйте id="info_block" на class="info_block" и добавьте css

    .info_block {
      disply: none;
    }
    .open_link:hover + .info_block {
      disply: block
    }


    Правда, лучше немножечко видоизменить, чтобы наведение было на общего родителя.
    Ответ написан
    2 комментария
  • Как сделать знак плюс в точном центре круга на css?

    Get-Web
    @Get-Web Куратор тега CSS
    Front-End Developer
    Сделайте плюс не шрифтом, а блоком из горизонтальной и вертикальной линий, потому что у шрифтов полно свойств:
    649b0f0b858da350988706.jpeg
    Чему к примеру равна горизонтальная линия вашего шрифтового плюса при размере 35px? Если у вас размер блока 45px, то линия должна быть так же с нечетным размером ровно 1px или 3px, или 5px в любом другом случае (1.2px, 3.6px, 4px) браузер начнет смещать ваш плюс вверх и вниз, что вы и наблюдаете.

    Если же блок будет с четным значением, например 44px, тогда, чтобы плюс стал по центру у него должен быть размер 2px,4px и т.д..

    Шрифты для такой задачи не подходят, тем более с изменением шрифта изменится и его центр.
    Ответ написан
    4 комментария
  • Как убрать автогенерацию rel="oreferrer noopener" в WordPress?

    vpetrov
    @vpetrov
    частный SEO-специалист
    А зачем убирать?
    Это, в общем-то, опция безопасности, закрывающая одну старую матерую дырку.
    Ответ написан
    Комментировать
  • Как разогнать видеокарту на Ideapad 330-15ICH?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Есть ли какие-либо способы её обойти?

    Один такой тут недавно память пытался разогнать :) Скорее всего, отскочит заменой матери (хотя память тоже могла погореть).
    В ноутбуке, где каждый компонент работает на пределе тепловых возможностей - разгонять? Добить решили, чтобы не мучился?
    Ответ написан
    Комментировать
  • Как закрыть модальное окно спустя 5 секунд после успешной отправки с cf7?

    Stalker_RED
    @Stalker_RED
    setTimeout(myFunc, 5000)
    5000 миллисекунд = 5 сек
    вместо myFunc - ваша функция, которая закроет модалку.
    Ответ написан
    Комментировать
  • Правда ли, что если изучить Фронтенд а потом начать изучать Бэкенд, ты почти забудешь Фронтенд?

    xenon
    @xenon
    Too drunk to fsck
    Я считаю себя скорее бэкэндщиком, и да - много раз пришлось фронт заново повторять, вспоминать очевидное, потому что тяжело решать какую-то простую "фронтовую" задачу раз в 2-3 года. За это время все забываешь, да.
    Точно так же забывается golang, если долго программируешь на python, и вообще любые неиспользуемые знания пропадают - так уж мозг устроен.

    Но две важных вещи:
    1. Вспоминать забытое - просто и быстро, это не учиться с нуля. Скорее всего какой-нибудь cheatsheet поможет из сети или самодельный. Они не пропадают совсем.
    2. Это все равно надо. Хороший специалист в любой сфере должен иметь некоторое представление и о смежных вещах. Бекэндщику никуда без хотя бы базовых знаний по фронтенду. Фронтендщику бэк, наверное, нужен немного меньше, но если хочется быть ценным специалистом - то все равно нужно.
    Ответ написан
    Комментировать
  • К какому шаблону относится оформление свойств через нижнее подчеркивание?

    meusov11
    @meusov11
    По сути никакому.

    Использование нижнего подчеркивания перед именем переменной, такого как наприме р this._data, является соглашением в некоторых языках программирования, включая JavaScript. Это не является частью синтаксиса языка или специальной функциональностью, а скорее соглашением об именовании, указывающим на то, что переменная является "приватной" или "внутренней" для твоего класса

    В js вообще нет строгой приватности для переменных или свойств классов. Все свойства и методы класса по умолчанию доступны извне объекта. Использование символа _ перед именем переменной или свойства служит как некий сигнал или подсказка для других разработчиков о том, что эта переменная или свойство предназначены для внутреннего использования и не следует напрямую обращаться к ним извне класса.

    Таким образом, this._data в вашем примере указывает на то, что _data предполагается использовать только внутри класса User. Если бы использовалось this.data без символа _, это могло бы дать впечатление, что свойство data предназначено для публичного доступа извне класса.

    Еще разрабы документируют такие соглашения и указывают на то, что свойства или методы с символом _ перед именем предназначены для внутреннего использования. Это может быть указано в комментариях или в документации класса.
    Ответ написан
    8 комментариев
  • Какую библиотеку посоветуете для горизонтального скролла мышью?

    Mike_Ro
    @Mike_Ro Куратор тега JavaScript
    Python, JS, WordPress, SEO, Bots, Adversting
    https://github.com/asvd/dragscroll
    Dragscroll is a micro JavaScript library (910 bytes minified)


    Если нужно будет больше опций, то рекомендую: Swiper https://github.com/nolimits4web/swiper
    Ответ написан
    1 комментарий
  • Что делать если не задаётся бэкграунд на nav?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Верставший фронтендер
    Что значит "не задаётся бэкграунд"? Всё накидывается и работает в соответствии с тем, что указано в css.
    У nav белый фон, у списка внутри - серый, согласно универсальному селектору
    * {
        box-sizing: border-box;
        background: #E5E5E5;
    }
    (без чёткого понимания всех нюансов этого селектора использовать его не рекомендуется).
    Ответ написан
    3 комментария
  • Можно ли постить свои фриланс работы?

    pozZzitiv
    @pozZzitiv
    Дизайнер и перфекционист
    Кратко: можно, если это не было прямо запрещено.

    Если устно или в переписке была озвучена просьба не выкладывать, то чисто по-человечески следует пойти навстречу. Если просят не выкладывать, но очень хочется — ищите компромисс (убрать упоминание фирмы клиента, выложить лишь часть и т.п.).

    Если запрет прописан в договоре, то нельзя выкладывать.

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

    @karminski
    Senior React.JS Developer
    С учётом того, что мы привыкли скроллить страницу сверху вниз, колонки ни в каком виде не будут удобны для чтения.
    Ответ написан
    Комментировать
  • Зачем комментируют перед написанием кода?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Смыслов много. Во первых исходник не всегда отражает намерения разработчика или есть какая-то информация которая лежит вне этого поля зрения. Например фиксится какое-то сложное поведение кода наподобие undefined behaviour и нужно написать сверху комментарий почему именно сделано так. В противном случае другой разработчик может не понять все эти изменения и откатить их или просто выкинуть кусок кода за непониманием. Такова природа людей. Непонятное - откидываем в сторону. А если будет написано :
    // Warning! Do not touch next line of code, because ...


    Комментировать также полезно для самого себя когда идет описание например редкого алгоритма который
    ты откуда-то скопировал или сам реализовал.

    Смысл также есть в авто-документировании для авто-документации. По ключевым словам типа Doxygen, JavaDoc можно посмотреть примеры и туториалы по документированию. Это очень хороший навык который сделает в беспорядочной разработке видимость ведения документации. Тут надо конечно идти от scrum-agile и потребностей бизнеса но бывают также проекты (ведомственные, и прочие промышленные) где это важно, и где требуют сопроводительную бумажку. Тулзов для этого много. Я перечислил только 2 но их больше.

    Вот что точно не надо комментировать так это : твою подпись, дату-время изменений и заголовок JIRA-ticket на основании которого велась разработка. Вся эта инфа всегда храниться в системах версионного контроля и нет смысла ее дублировать дважды.
    Ответ написан
    3 комментария
  • Путаница с z-index - что я упускаю?

    @Asokr
    Задайте элементу с тенью
    pointer-events: none
    Ответ написан
    1 комментарий
  • Хорошее ли решение разделение таблиц юзер и роли?

    @alexalexes
    Вы выделили в системе два класса сущностей. Одна - Пользователь, вторая - Роль.
    Под каждый класс нужна отдельная таблица.
    Как определить какие взаимоотношения между этими классами?
    Нужно примерить следующие коммутативные гипотезы:
    Первая пара гипотез:
    "Один пользователь должен (может) иметь только одну роль."
    "Одна роль должна (может) быть назначена многим пользователям."
    Вторая пара гипотез:
    "Один пользователь должен (может) иметь несколько ролей."
    "Одна роль должна (может) быть назначена многим пользователям."
    Если в вашей архитектуре системы справедлива первая пара гипотез, то вы строите взаимоотношение между классами Роль и Пользователь как "один ко многим". Это значит, что у таблицы Пользователь будет внешний ключ в виде идентификатора роли, тем самым вы каждому пользователю сможете назначить только одну роль. Но сами роли могут повторятся у разных пользователей.
    Если в вашей архитектуре системы справедлива вторая пара гипотез, то вы строите взаимоотношение между классами Роль и Пользователь как "многим ко многим". Для этого нужно создать промежуточную таблицу, например Пользователь_и_роль, в которой будут два внешних ключа - идентификатор пользователя и идентификатор роли пользователя (можно, но технически нужно еще создать еще идентификатор первичного ключа, чтобы можно было корректно обращаться к записям этой таблицы, не путая их). В этом случае каждому пользователю можно выделить целый набор ролей, не ограничиваясь одной ролью.
    Ответ написан
    Комментировать
  • Нужно ли Frontend разработчику мониторить обновления?

    AlekseyNemiro
    @AlekseyNemiro
    full-stack developer
    За обновлениями периодически нужно следить, просто, чтобы знать, что меняется, появляется или удаляется из новых версий. Нужно ли обновлять - это уже вопрос потребностей проекта, клиента, команды.

    Я обычно просматриваю изменения ключевых пакетов/библиотек раз в 1-3 месяца.

    В большом проекте ключевые пакеты/библиотеки может быть сложно обновить, особенно если меняется номер старшей (major) версии (например, Bootstrap v4 => v5). Несущественные изменения (minor), в некоторых случаях могут иметь ощутимые последствия, что-то может сломаться или изменится поведение.

    Я бы не стал просто так обновлять такой пакет, как Bootstrap. Если обновление ключевого пакета происходит, то это неизбежно увеличит нагрузку на QA команду (quality assurance - обеспечение качества, тестирование). В случае с Bootstrap, вероятно придется весь проект перетестировать. Без автоматического тестирования будет особенно тяжко.

    С мелкими пакетами, которые используются в изолированных частях проекта, проще, их можно хоть каждый день обновлять, если конечно появляются необходимые изменения.

    Если вы используете менеджер пакетов, например npm, то скорее всего он вам будет показывать предупреждения об обнаруженных уязвимостях в пакетах и варианты их устранения. За этим лучше следить, чтобы потом не было неприятных сюрпризов. Как правило, с менеджером пакетов это делать проще, достаточно будет проверить отдельные предупреждения, а не все пакеты.

    Ну и главное, не делать просто так обновления на текущей активной версии проекта. Чем дольше проект с обновленными пакетами будет находиться на тестировании, тем лучше.
    Ответ написан
    Комментировать
  • Можно ли во время изучения JS больше ориентироваться на практику чем на книги и пользоваться поиском нужных команд?

    @Niksak
    Только так и можно, учить инструменты в бою)
    Теория выветривается
    Ответ написан
    Комментировать
  • Front-end разработчик обязан уметь верстать в разных программах?

    @alexalexes
    Какой бы программой вы не пользовались, вам нужно уметь всего лишь снимать метрики с графических примитивов с помощью линейки, пипеткой брать цвет, знать как извлечь коэффициент прозрачности и характеристики градиентов, блюров, снимать характеристики шрифта с текста. Больше ценится навык, как вы все эти параметры наиболее быстро запихнете в CSS или напишите шаблон для предпроцессора CSS. И если какая-та программа на выходе получит сырой CSS - как его дошлифовать до конечного результата?
    Ответ написан
    Комментировать
  • Разница между JavaScript и HTML5 игрой?

    delphinpro
    @delphinpro Куратор тега JavaScript
    frontend developer
    На html игры не пишут. Их всегда пишут на javascript
    Просто так называют игры, которые для отображения используют холст (canvas)
    Такое название сложилось исторически, с тех времен, когда игры в основном писались на флеше. Вот чтобы их как-то обособить игры на js стали называть играми на html5 в противовес флешу.
    Ответ написан
    Комментировать
  • Как сделать кнопку назад на js чтобы она возвращала назад не по истории браузера, а по хлебным крошкам?

    @furashcka
    Наверняка у вас есть список url из хлебных крошек, если нет то на крайний случай их можно вытащить из html, их можно представить в виде массива: [`site.com/catalog`, `site.com/catalog/sub-catalog`, `site.com/catalog/sub-catalog/item`], имея данный массив находим текущий index по location.href
    let breadcrumbs = [`site.com/catalog`, `site.com/catalog/sub-catalog`, `site.com/catalog/sub-catalog/item`];
    let indexCurrent = breadcrumbs.indexOf(location.href);
    let indexPrev = Math.max(0, indexCurrent - 1);
    let prevURL = breadcrumbs[indexPrev];
    
    location.href = prevURL;


    Как видите вам понадобится массив с url, по которому вы можете возвращаться назад, за счёт currentIndex - 1, пока не дойдёте до главной страницы, у которой обычно index = 0
    Ответ написан
    Комментировать