Mik*_* Me 8 html css angular-material
我对css很新,我无法将mat-icon(思想泡泡)与div class = img(左边的绿色方块)对齐 - 请参阅附图.此刻图标有点靠近顶部
为了添加svg图标,我使用了Material Angular - MatIconRegistry类(不知道是否重要)
这是我的HTML:
<div class="container">
<div class="img"><mat-icon svgIcon="info"></mat-icon></div>
Some text here!
</div>
Run Code Online (Sandbox Code Playgroud)
这是我的css:
$conainer-min-width: 256px !default;
$conainer-max-width: 512px !default;
$conainer-height: 50px !default;
div.container {
max-width: $container-max-width;
min-width: $container-min-width;
height: $container-height;
margin: auto;
color: #000000;
background-color: #ffffff;
line-height: $container-height;
text-align: center;
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
border-width: 1px;
border-style: solid;
border-color: #9e9e9e;
padding-right: 20px;
position: fixed;
z-index: 1000;
left: 0;
right: 0;
top: 30px;
}
div.img {
width: $container-height;
height: $container-height;
float: left;
display: block;
margin: 0 auto;
border-right-width: 1px;
border-right-style: solid;
border-right-color: #9e9e9e;
line-height: $container-height;
justify-content: center;
background-color: #3f9c35;
}
Run Code Online (Sandbox Code Playgroud)
有关如何解决此问题的任何想法?
The*_*ear 15
您需要添加vertical align到mat-icon元素或.mat-icon类:
要覆盖所有材质图标: Stackblitz
.mat-icon {
vertical-align: middle;
}
Run Code Online (Sandbox Code Playgroud)
使用FLEX: Stackblitz
CSS:
.icon-text {
display: flex;
align-items: center;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<div class="icon-text">
<mat-icon>home</mat-icon>
<span>Some text here 1</span>
</div>
Run Code Online (Sandbox Code Playgroud)
使用实用程序类设置特定的材质图标: Stackblitz
在一些全局css文件中:
.v-align-middle {
vertical-align: middle;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<div>
<mat-icon class="v-align-middle">home</mat-icon>
<span class="v-align-middle">Some text here 1</span>
</div>
Run Code Online (Sandbox Code Playgroud)
**一些css框架已经有这样的类,例如:bootstrap 4**
为特定材质图标设计样式: Stackblitz
CSS:
.custom-class mat-icon {
vertical-align: middle;
}
/** or using the class .mat-icon */
.custom-class .mat-icon {
vertical-align: middle;
}
Run Code Online (Sandbox Code Playgroud)
HTML:
<div class="custom-class">
<mat-icon>home</mat-icon>
<span>Some text here 1</span>
</div>
Run Code Online (Sandbox Code Playgroud)
您可以使用flex布局来对齐图标
<div fxLayout="row" fxLayoutAlign="center">
<mat-icon fxFlexAlign="center">supervisor_account</mat-icon>
</div>
Run Code Online (Sandbox Code Playgroud)
在文档中阅读有关 flexLayout 的更多信息,fxLayout row 与以下内容相同:
div {
display:flex;
flex-direction:row;
justify-content:center; /* For fxLayoutAlign="center" */
}
Run Code Online (Sandbox Code Playgroud)
然后你进一步将弹性项目对齐到中心,即fxFlexAlign="center"
mat-icon {
display:flex;
align-self:center;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
12295 次 |
| 最近记录: |