通过覆盖样式道具使材料-ui组件显示为内联

时间:2017-01-26 12:42:16

标签: css material-ui

我正在尝试在输入字段的右侧显示一个复选框"回答输入一个"我曾尝试使用display属性,但我一般都在努力克服css布局。what I am currently getting

以下是呈现答案输入的代码:

     <div>
  <TextField
  hintText="An informative question title..."
  fullWidth
  floatingLabelText="Question Title"
  value={questionTitle}
  onChange={(e) => this.props.questionTitleChanged(e.target.value)}
  />
  <TextField
  floatingLabelText="Answer Input 1"
  onChange={(e) => this.props.questionInputChanged({
    inputIndex: 0,
    value: e.target.value,
    correct: false
  })}
  value={questionInputs[0].value}
  style={styles.answerField}
  />

  <Checkbox
  onCheck={() => {
    let correctOrIncorrect = null;

    if (questionInputs[0].correct) {
      correctOrIncorrect = false;
    } else { correctOrIncorrect = true; }

    this.props.questionInputChanged({
    inputIndex: 0,
    value: null,
    correct: correctOrIncorrect });
  }}
  style={styles.checkbox}
  />

  </div>

内联样式在这里:

const styles = {
  createQuizContainer: {
    width: '70%',
    margin: 'auto',
    paddingTop: 30,
    paddingBottom: 40
  },
  answerField: {
    width: '70%',
  },
  checkBox: {
    display: 'inline',
  }

};

和帮助将不胜感激!以及有关css布局的任何建议!

感谢。

2 个答案:

答案 0 :(得分:4)

您可以使用flexbox:

render() {
    return (
        <div style={{ display: 'inline-flex' }}>
            <div>
                <TextField />
            </div>
            <div style={{ alignSelf: 'center' }}>
                <Checkbox />
            </div>
        </div>
    );
}

https://jsfiddle.net/2v1Legy2/1/

答案 1 :(得分:0)

我将复选框的css更改为:

checkbox: {
    float: 'right',
    width: '10%',
    marginTop: '7%'
  }

以前是全宽度。不是一个很好的解决方案,但无论如何到那里