Skip to content

Добавляет демо калькулятор NTH #4769

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 12 commits into from
Nov 15, 2023

Conversation

makarovaiuliia
Copy link
Contributor

@makarovaiuliia makarovaiuliia commented Oct 10, 2023

Описание

Closes #

Демо https://content-4769.dev.doka.guide/css/child/demos/nth-calculator/

Чек-лист

  • Текст оформлен согласно руководству по стилю
  • Ссылки на внутренние материалы начинаются со слеша и заканчиваются слэшем либо якорем на заголовок (/css/color/, /tools/json/, /tools/gulp/#kak-ponyat)
  • Ссылки на картинки, видео и демки относительные (images/example.png, demos/example/, ../demos/example/)

@github-actions github-actions bot added css Контент по CSS дока Справочный материал labels Oct 10, 2023
@TatianaFokina TatianaFokina added the улучшение Доработка существующего label Oct 10, 2023
@skorobaeus
Copy link
Member

Есть ощущение, что пришло время сделать такой калькулятор в виде демки :)

Copy link
Member

@solarrust solarrust left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Спасибо тебе большое за такую важную правку. Как тебе кажется, может быть этот калькулятор от CSS-tricks больше подойдёт?

https://css-tricks.com/examples/nth-child-tester/

@makarovaiuliia
Copy link
Contributor Author

Спасибо тебе большое за такую важную правку. Как тебе кажется, может быть этот калькулятор от CSS-tricks больше подойдёт?

https://css-tricks.com/examples/nth-child-tester/

Я его тоже рассматривала, он очень хорош) Но мне показалось, что калькулятор на этой странице нужен как раз-таки для тех, кто не умеет писать формулы. Первый калькулятор позволяет делать именно это: указать паттерн и получить готовую формулу. А второй на основе уже готовой формулы отображает паттерн. По красоте, конечно, второй превосходит.

Возможно, Светлана права и надо писать самим калькулятор с хорошим дизайном и богатым функционалом!) Я бы взялась, но где-то через месяц, когда освою Джаваскрипт:)))

@solarrust
Copy link
Member

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

Ещё один момент относительно ссылки на кодпен — она может «протухнуть» в любой момент. А CSS-tricks, кажется, будут жить и здравствовать ещё долго =)

Предложу альтернативу, между ссылкой на сайт и изготовлением собственного калькулятора с нуля. Может быть мы перетащим код из кодпена к нам? Тогда мы сможем допилить стиль, гарантировать работоспособность демки и нанести пользу.

Если ты согласишься на такой вариант, то мы с @skorobaeus поможем =)

@makarovaiuliia
Copy link
Contributor Author

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

Ещё один момент относительно ссылки на кодпен — она может «протухнуть» в любой момент. А CSS-tricks, кажется, будут жить и здравствовать ещё долго =)

Предложу альтернативу, между ссылкой на сайт и изготовлением собственного калькулятора с нуля. Может быть мы перетащим код из кодпена к нам? Тогда мы сможем допилить стиль, гарантировать работоспособность демки и нанести пользу.

Если ты согласишься на такой вариант, то мы с @skorobaeus поможем =)

А, этот момент я не учла) Да, я согласна сделать, очень вдохновлена!

Правильно понимаю, что этот калькулятор можно оформить внутри существующей статьи (не переходя по ссылке)? Только скажите, с чего начать, и я в деле!

@solarrust
Copy link
Member

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

@makarovaiuliia
Copy link
Contributor Author

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

Оки! Спасибо! Беру в работу:)

@makarovaiuliia makarovaiuliia changed the title Добавляет рабочую ссылку на калькулятор NTH Добавляет демо калькулятор NTH Oct 17, 2023
@makarovaiuliia
Copy link
Contributor Author

Добрый день! У меня уже есть первые наработки, которые я могу представить.
Я уже загрузила их к себе в форкнутый репозиторий, но я уже час бьюсь, облазила весь интернет и не могу понять, как мне загрузить их в этот pull request....мне предлагает только создать новый(
Буду очень благорна, если скажете, как это сделать, либо могу сделать новый pull request. Спасибо!

@solarrust
Copy link
Member

Чтобы коммиты влились в этот же пиар нужно запушить их в ту же ветку — patch-1.

@makarovaiuliia
Copy link
Contributor Author

makarovaiuliia commented Oct 20, 2023

Добрый день! Спасибо за ответ, я разобралась! Посмотрите, пожалуйста, в правильном ли направлении я двигаюсь.

Моя идея: сделать калькулятор "двухсторонним": то есть соединить функционал двух калькуляторов (пользователь может получить формулу, потыкав на чекбоксы, а также ввести формулу самостоятельно).

Что я уже сделала:

  1. Сделала html разметку, а также CSS стили. Дизайн еще будет немного дорабатываться, но можете уже сейчас посмотреть, что нравится, что не нравится, чтобы я убрала или добавила)

  2. Сделала функционал ввода формулы пользователем: пользователь может ввести следующие формулы и получить "подсвеченные" чекбоксы: nth-child(odd), nth-child(even), а также формулы в формате nth-child(an+b), nth-child(an). Для доработки: добавить возможность ввода last и first child.

  3. Начала делать функционал с отметкой чекбоксов, но пока работает c некоторыми погрешностями: например, путает 2n+1 и 2n. Это из-за ошибки кода из codepen, надо искать. Также при использовании этого калькулятора в инпут выводится несколько формул: от одной до трех. Надо сделать так, чтобы инпут расширялся под количество формул и каждая из них выводилась на отдельной строке.

Буду рада любой критики и предложениям! Спасибо!

@skorobaeus
Copy link
Member

Ах, я очень рада, что этот калькулятор становится реальностью ❤ Мы так давно хотели его добавить!

У меня возник такой вопрос: а нужна ли возможность изменять количество элементов в родителе? Работа формул в селекторе от этого не зависит (за редчайшим исключением). Я бы это убрала, наверное — меньше придётся кодить :)

Зато предложила бы добавить возможность скопировать в буфер обмена получившуюся формулу.

Тогда можно будет задизайнить как-то так:

image

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

@makarovaiuliia
Copy link
Contributor Author

Ах, я очень рада, что этот калькулятор становится реальностью ❤ Мы так давно хотели его добавить!

У меня возник такой вопрос: а нужна ли возможность изменять количество элементов в родителе? Работа формул в селекторе от этого не зависит (за редчайшим исключением). Я бы это убрала, наверное — меньше придётся кодить :)

Зато предложила бы добавить возможность скопировать в буфер обмена получившуюся формулу.

Тогда можно будет задизайнить как-то так:

image

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

@makarovaiuliia
Copy link
Contributor Author

Ах, я очень рада, что этот калькулятор становится реальностью ❤ Мы так давно хотели его добавить!
У меня возник такой вопрос: а нужна ли возможность изменять количество элементов в родителе? Работа формул в селекторе от этого не зависит (за редчайшим исключением). Я бы это убрала, наверное — меньше придётся кодить :)
Зато предложила бы добавить возможность скопировать в буфер обмена получившуюся формулу.
Тогда можно будет задизайнить как-то так:
image
Я сделала больший акцент на интерактивных элементах, т.к. они являются ключом этой демки, и ещё убрала CSS-правило, ведь на самом деле мы хотим получить только формулу :)

Добрый день! Да, действительно, эта возможность кажется излишней) мне очень нравится дизайн! Прямо отличный! Спасибо, в первой половине недели постараюсь отправить новую версию с обновленным дизайном:)

p.s. Случайно нажала close with comment, уже переоткрыла. Надеюсь, что я ничего не сломала…GitHub все еще новый для меня😁

@skorobaeus
Copy link
Member

Всё окей, а если и случится что, всё починим :)

@makarovaiuliia
Copy link
Contributor Author

Всем привет!

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

Он умеет:

  1. Считывать формулы и отмечать нужные чекбоксы

Он умеет считывать все нужные формулы, а именно:

  • last-child, :first-child, nth-child(x), last-child(x)
  • nth-child(an), nth-child(an+b), nth-child(-an+b)
  • nth-child(odd), nth-child(even)
  1. Анализировать отмеченные чекбоксы и в результате выдает все возможные формулы, которые подходят для отмеченной последовательности

Он умеет выдавать все, которые перечислены в возможностях считывания

Из фишек:

  1. Калькулятор не чувствителен к пробелам, которые может случайно наставить пользователь там, где не нужно
  2. Калькулятор не чувствителен к символу “:” перед nth-child и другими псевдоклассами
  3. При нажатии на скопировать на секунду появляется галочка
  4. При нажатии на скопировать в поле ввода появляется подсказка: :nth-child(введите формулу)

Можно добавить заготовленные формулы как у css tricks

Насчет дизайна:

Я все делала примерно по изображению, но в некоторых местах меняла размеры (например, увеличила ширину ввода формулы, чтобы там могло поместиться три формулы). Прикрепляю макет из Figma. Если что то не нравится по размерам, можно там поправить и мне скинуть, чтобы я точно знала, где и на сколько пикселей менять)

Макет: https://www.figma.com/file/drZDFee6RIfPVuYyVUB76S/doka%2Fnth-child-calculator?type=design&node-id=0%3A1&mode=dev

@skorobaeus
Copy link
Member

skorobaeus commented Oct 30, 2023

Красота! 😍 Я очень тронута тем, что ты перенесла в фигму макет ❤

Все пришедшие мне в голову формулы сработали, по оформлению вопросов нет, кажется, остаётся только донастроить адаптив. Вот как поле ввода ведёт себя при разных ширинах окна:

image

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

image

И сделать мобильно-планшетную версию, в которой квадратики разместить в 3 или 4 ряда (благо, их 12, они встанут красиво), а элементы формы друг под другом. Я обычно делаю только один брейкпоинт (<768px) простоты ради)))

@makarovaiuliia
Copy link
Contributor Author

Отлично! Рада, что все работает🥰 Тогда начинаю адаптив - в ближайшие дни будет!)

@makarovaiuliia
Copy link
Contributor Author

Всем привет! Держу в курсе: я немного просела на адаптивный верстке...но удачно сложилось, что у меня на курсе фронтенда как раз на следующей неделе будет адаптивная верстка. Если можно, я взяла бы неделю на обучение и уже после сразу применю новые знания. Сейчас я закоммитила следующие изменения: чтоб не слипались поле ввода и кнопка добавила Gap. Так что декстопная версия, хоть и с костылями, но готова более менее. После обучения я изменю css для декстопной версии и добавлю для мобильной

@skorobaeus
Copy link
Member

Конечно, давай! Это очень круто ❤ Учимся сами и помогаем другим — пиковый дока-экспириенс!

@makarovaiuliia
Copy link
Contributor Author

makarovaiuliia commented Nov 11, 2023

Всем привет! Добавила адаптивную верстку для калькулятора, старалась сделать резиновой, как могла) Буду рада комментариям, предложениям и критике:)

Copy link

Превью контента из 6574f26 опубликовано.

Copy link
Member

@skorobaeus skorobaeus left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

По-моему, получилось просто супер! Ура!

Copy link
Member

@solarrust solarrust left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfection! 😌

Если будет задор, то можно по мотивам этой демки сделать калькулятор для псевдоклассов группы type. Там чуть-чуть замороченее, но смысл тот же =)

@solarrust solarrust merged commit ede38b8 into doka-guide:main Nov 15, 2023
@solarrust
Copy link
Member

Только после мёрджа вспомнила, что надо отметить твой вклад! Пожалуйста, приноси пиарчик, где добавляешь себя в контрибьюторы этой статьи. Надо будет создать свой профиль в папке people/. Вот тут процесс описан подробнее → https://github.com/doka-guide/content/blob/main/docs/people.md

baileys-li pushed a commit to baileys-li/doka-content that referenced this pull request Dec 19, 2024
* Добавляет рабочую ссылку на калькулятор NTH

* Добавляет nth-calculator с неполным функционалом

* Добаляет nth-calculator в неполном функционале v.2

* Добавляет демо NTH calculator

* Вставляет демо в текст статьи

* Ублажает спеллер, форматирует JS

* Исправляет опечатку

* 😩 ещё раз исправляет опечатку

* Добавляет гэп между текстовым импутом и кнопкой

* Добавляет адаптивную верстку в nth-calculator

---------

Co-authored-by: Alena Batitskaia <solarrust@users.noreply.github.com>
Co-authored-by: Alena Batitskaia <batickaya.a@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
css Контент по CSS дока Справочный материал улучшение Доработка существующего
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants