Как стилизовать элемент <input>в фокусе, используя стилизованные компоненты? - PullRequest
1 голос
/ 07 января 2020

Вот мой стилизованный компонент:

const StyledInput = styled.input`
    width: 90%;
    padding: grey;
    border: 0px;
    font-size: 12px;
    &:input:focus {
        outline: none;
        box-shadow: 0px 0px 2px red;
    }
`;

И реализация:

 <StyledInput
     autoFocus={true}
     type="text"
     onChange={this.handleChange}
     placeholder={this.props.placeHolder}
 />

Но границы не изменяются на красный при фокусировке (оставьте значение по умолчанию Chrome синий) , Как изменить границы ввода в фокусе?

1 Ответ

2 голосов
/ 07 января 2020

Измените &:input:focus { на &:focus {:

const StyledInput = styled.input`
    width: 90%;
    padding: grey;
    border: 0px;
    font-size: 12px;
    &:focus {
        outline: none;
        box-shadow: 0px 0px 2px red;
    }
`;

Как отметил Ишервуд:

вы по существу удваиваете входную часть селектора, когда вы имейте это сейчас.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...