My Reactコード例を参照してください:
import React from 'react';
import { Row, Col, Icon } from 'antd';
const MyRow = () => (
<Row type="flex" align="middle">
<Col md={10}>Trouble is a friend</Col>
<Col md={10}><Icon type="play-circle-o" /></Col>
<Col md={4}><div>Lenka</div></Col>
</Row>
);
...
<MyRow />
をレンダリングしたところ、<Row>
のテキストが垂直方向の中央に配置されていましたが、<Icon>
コンポーネントはそうではありませんでした。私の<MyRow>
が見栄えがしなかったように。テキストだけでなく<Row>
のSVG
もすべてのコンテンツを垂直方向に中央揃えできると思っていました。
他のアイコンライブラリも試しました。 react-icons-kit
、機能しませんでした。
誰かがアイデアを持っていますか?
これは実際には具体的なものではなく、一般的には垂直方向の中央揃えです。従来のCSSでそれを行う方法について説明している 6垂直センタリングの方法 をお勧めします。この場合、CSS Tableメソッドが適切に機能します。
Flexbox(<Row type="flex">
)、align-items: center
行。
Jesperのおかげで私たちは助けてくれます!幸いなことに、私はこの小さな問題の解決策を見つけました:
Icon
のantd
の場合:
<Row type="flex" align="middle">
<Col>
<div style={{ display: 'inline-flex', justifyContent: 'center', alignItems: 'center'}}>
<Icon type="play-circle-o" style={{ display: 'inline-block', verticalAlign: 'middle' }} />
</div>
</Col>
</Row>
Icon
の場合react-icons-kit
:
import Icon from 'react-icons-kit';
import { ic_play_circle_outline } from 'react-icons-kit/md/ic_play_circle_outline';
...
<Row type="flex" align="middle">
<Col>
<Icon icon={ic_play_circle_outline} style={{ verticalAlign: 'middle' }} />
</Col>
</Row>
私の場合、機能したのはtextAlign = 'center'でした。以下の例では、カードのコンテンツを中央に配置したいと考えていました。そしてそれは素晴らしかった!
import { Row, Col, Button, Card } from 'antd';
import 'antd/dist/antd.css';
...
<Row>
<Col md={{span: 12, offset: 6}}>
<Card style={{textAlign: 'center'}}>
<h1 style={{ color: '#52c41a' }}>
Booked Successfully!
</h1>
<Button size="large" type="primary">
See your booked trips
</Button>
</Card>
</Col>
</Row>
...