コードサンドボックスの仕切りの動作がおかしいです。 厚く表示されることもあれば、表示されないこともあります。 これは、Macでcmd +/-を使用して再現し、ブラウザのズームを調整できます。 例については、添付のスクリーンショットを参照してください。
https://codesandbox.io/s/mmnoyvq9oy
ダイアログをいくつかの異なるコンテキストで機能させようとしているだけです
| 技術| バージョン|
| -------------- | --------- |
| 素材-UI | v3.9.1 |
| React | 16.8.4 |
| ブラウザ| Chrome |
@urirahimi Chromeにサブピクセル計算を強制していますが、これは通常、奇妙な動作をします。
次の方法で問題を軽減できます。
const theme = createMuiTheme({
overrides: {
MuiDivider: {
root: {
marginTop: 1,
},
},
),
});
実装を背景色からボーダートップに変更しようとしましたが、役に立ちません。
https://stackoverflow.com/questions/12547580/borders-disappear-in-chrome-when-i-zoom-in
ブラウザのズームを90%または100%に増やしてみてください。 マジック
警告:私はまだバージョン3.9.2を使用しており、FirefoxとChromeでのみテストしました。
境界線の太さとしてthin
を使用すると、問題が解決しました。 これにより、ブラウザが厚さを決定できます。 Chromeでは、 thin
が1px / zoom
として選択されます。 -ズームレベルに関係なく、常に正確に1実ピクセルのままであることを意味します。 Firefoxはズームアウト時に同じことを行いますが、> = 200%ズームの場合は2実ピクセル、> = 300%ズームの場合は3実ピクセルなどになります。残念ながら、同じようには動作しませんが、少なくとも両方とも動作します。より良いとthin
と比べて1px
。
const theme = createMuiTheme({
overrides: {
MuiDivider: {
root: {
// Dividers not consistent when zooming.
// https://github.com/mui-org/material-ui/issues/14815
borderTop: 'thin solid rgba(0, 0, 0, 0.12)', //this color should be theme.palette.divider if that is set
backgroundColor: undefined,
height: undefined,
},
},
),
});
最も参考になるコメント
ブラウザのズームを90%または100%に増やしてみてください。 マジック