Как убрать стрелки в типе ввода «число» внутри ввода?

Я хотел бы удалить стрелки, когда ввод сфокусирован, но я не могу использовать файл CSS. Я должен сделать это на моем компоненте.

Как я могу этого добиться? Возможно ли это с помощью TailwindCSS?

Детская площадка Tailwind

const InputCounter = ({ id, label, value }: NumericInputProps) => {
  const [count, setCount] = useState(value ?? 0);

  return (
    <div className = "hk-flex hk-flex-col hk-gap-2">
      <label htmlFor = {id} className = "hk-text-sm hk-font-bold hk-text-neutral-700">
        {label}
      </label>

      <div>
        <button
          type = "button"
          className = "hk-h-10 hk-w-10 hk-bg-transparent hk-rounded hk-rounded-r focus:hk-outline-none"
          onClick = {() => setCount(count - 1)}
        >
          <IconLess width = {16} height = {16} />
        </button>

        <input
          id = {id}
          type = "number"
          value = {count}
          className = "hk-h-10 hk-w-16 hk-text-center hk-text-base hk-border-none hk-rounded focus:hk-outline-none hk-appearance-none"
        />

        <button
          type = "button"
          className = "hk-h-10 hk-w-10 hk-bg-transparent hk-rounded hk-rounded-l focus:hk-outline-none"
          onClick = {() => setCount(count + 1)}
        >
          <IconPlus width = {16} height = {16} />
        </button>
      </div>
    </div>
  );
};

Отвечает ли это на ваш вопрос? stackoverflow.com/questions/3790935/…

Ar Rakin 29.03.2023 17:47

нет, так как CSS находится в CSS. Мне нужно, чтобы это было в моем className или атрибуте на входе

Johan 29.03.2023 17:48

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

Ar Rakin 29.03.2023 17:52

Вы можете добавить style = "" к элементу.

Grumpy 29.03.2023 17:52

Вы имеете в виду, что не можете добавлять/обновлять какие-либо классы CSS?

5DimentionalObject 29.03.2023 17:52

Я могу добавить классы или атрибут стиля, но я не могу создать файл css, чтобы добавить в него CSS.

Johan 29.03.2023 17:53

Затем используйте тег <style> и напишите внутри него CSS.

Ar Rakin 29.03.2023 17:54

Я пытался, но получаю сообщение об ошибке: "Не удается найти имя "webkit"" ^^'

Johan 29.03.2023 17:56

Обязательно сделайте это таким образом: <style jsx>{`styles_go_here`}</style>

Ar Rakin 29.03.2023 17:57

Что происходит, когда вы добавляете атрибут стиля?

A Haworth 29.03.2023 19:39

@AHaworth Я добавил это, но стрелки все еще были там

Johan 29.03.2023 20:09
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
2
11
306
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Используйте атрибут [&::-webkit-inner-spin-button] с утилитой appearance-none.

Как вы можете видеть здесь, -webkit-inner-spin-button определяет те стрелки, которые вы хотите отключить:

CSS-псевдоэлемент ::-webkit-inner-spin-button используется для оформления внутренней части кнопки-счетчика элементов ввода числа.


Следующие работы:

<input id = "{id}" type = "number" value = "0" class = "[&::-webkit-inner-spin-button]:appearance-none" />

С вашим кодом:

<div class = "flex items-center border border-neutral-300 w-fit rounded m-8 ">
  <button type = "button" class = "h-10 w-10 rounded border-r border-gray-300 bg-transparent focus:outline-none">-</button>

  <input id = "{id}" type = "number" value = "0" class = "h-10 w-16 text-center  [&::-webkit-inner-spin-button]:appearance-none" />

  <button type = "button" class = "h-10 w-10 rounded border-l border-neutral-300 bg-transparent focus:outline-none">+</button>
</div>

Попутный ветер

Другие вопросы по теме