Стиль Cechkbox не применяется, если установлен флажок - PullRequest
0 голосов
/ 18 июня 2020

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

Итак, это выглядит так:

enter image description here

Итак, мой невыбранный вид выглядит нормально и работает. Невыделены все те, у которых есть +.

Проблема в том, что когда я выбираю один или несколько, я хотел бы, чтобы стиль был обратным, чтобы check и font были белыми, когда фон становится оранжевым.

Я пытаюсь использовать css :focus, :active ... ни один из них не работает, чтобы изменить цвет.

значок меняется из-за материала- ui fwk

здесь код:


import React from 'react';
import TextContents from '../../assets/translations/TextContents'
import './CreateClassOnBoardingForm.css';
import { waitForDomChange } from '@testing-library/react';
import Checkbox from '@material-ui/core/Checkbox';
import FormGroup from '@material-ui/core/FormGroup';
import FormControlLabel from '@material-ui/core/FormControlLabel';
import FormControl from '@material-ui/core/FormControl';
import FormLabel from '@material-ui/core/FormLabel';
import AddIcon from '@material-ui/icons/Add';
import CheckCircleOutlineIcon from '@material-ui/icons/CheckCircleOutline';

class ClassCreationFormStep11 extends React.Component {
    render() {

        const categoryList = [
            { value: 'CRAFT_AND_TRADE', name: 'Craft & Trades' },
            { value: 'CODE', name: 'Code' },
            { value: 'MECHANICAL', name: 'Mechanical'},     
            { value: 'SCIENCE', name: 'Science' }, 
            { value: 'BUSINESS', name: 'Business' },
            { value: 'CIVICS', name: 'Civics' },
            { value: 'COMMUNICATION', name: 'Communication' },
            { value: 'EXPLORATION', name: 'Exploration' },
            { value: 'FOOD', name: 'Food' },
            { value: 'CULTURE', name: 'Culture' },
            { value: 'PHILOSOPHY', name: 'Philosophy' },
            { value: 'WELLNESS', name: 'Wellness' },
            { value: 'PLAY', name: 'Play/Gaming' },
            { value: 'DANCE', name: 'Dance' },
            { value: 'MUSIC', name: 'Music' },
            { value: 'ART', name: 'Art' },
            { value: 'PHOTO', name: 'Photography' },
            { value: 'FILM', name: 'Film' },
            { value: 'DESIGN', name: 'Design' },
        ];

      if (this.props.currentStep !== 11) { // Prop: The current step
        return null
      }
      // The markup for the Step 1 UI
      return(
        <div className="form-class-cat-group">
          <label className="label-txt" htmlFor="typeOfClass">{TextContents.FormClassCategories}
                <FormControl component="fieldset">
                    <FormGroup aria-label="position" row>
                        {categoryList.map((e, key) =>  { 
                          return <FormControlLabel
                              value={e.value}
                              control={<Checkbox icon={<AddIcon />}
                                checkedIcon={<CheckCircleOutlineIcon />}
                                color="primary" />}
                              label={e.name}
                              labelPlacement="start"
                              className="check-box-village"/>                          
                      })}
                    </FormGroup>
                  </FormControl>
          </label>
        </div>
      )
    }
  }

  export default ClassCreationFormStep11

и css



.check-box-village {
  border-radius: 21px; 
  background-color: white; 
  border-color: #ff7255;
  border-style: solid;
  border-width: 2px;
  font-family: Source Sans Pro;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  color: #ff7255;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 2px;
  padding-right: 4px;
}

.check-box-village:checked {
  border-radius: 21px; 
  background-color: #ff7255; 
  border-color: #ff7255;
  border-style: solid;
  border-width: 2px;
  font-family: Source Sans Pro;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  color: white;
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 2px;
  padding-right: 2px;
}



Есть идеи, как применить css к проверке

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