我正在尝试为Ionic 4应用程序的占位符设置样式。HTML如下所示:
<form>
<ion-grid>
<ion-row class='label'>Name</ion-row>
<ion-row>
<ion-item>
<ion-input type='text' [(ngModel)]='recipe.name' name='name' placeholder='Name'></ion-input>
</ion-item>
</ion-row>
<ion-row class='label'>Weight</ion-row>
<ion-row>
<ion-item>
<ion-input type='number' [(ngModel)]='recipe.weight' name='weight' placeholder='Weight'></ion-input>
<ion-label>kg</ion-label>
</ion-item>
</ion-row>
</ion-grid>
</form>
如果尝试Ionic 2.x solutions,但仍无法解决。
我发现,如果您在 ion-item 中设置颜色,则会为输入字段的整个文本设置样式
ion-item {
ion-input{
color:red;
}
}
当在 ion-input 上使用伪类:placeholder-shown 或伪元素 :: placeholder 时,样式不会显示任何效果。
我在做什么错?在Ionic 4中甚至可以设置输入占位符的样式吗?
编辑:
Stackblitz与Ionic 4和Angular 6分叉
答案 0 :(得分:8)
使用此样式代码:
ion-input{
--placeholder-color: red;
--placeholder-opacity: 1;
}
答案 1 :(得分:1)
请尝试以下常规样式,以查看是否有效果:
::-webkit-input-placeholder { /* Chrome/Opera/Safari */
color: red;
}
::-moz-placeholder { /* Firefox 19+ */
color: red;
}
:-ms-input-placeholder { /* IE 10+ */
color: red;
}
:-moz-placeholder { /* Firefox 18- */
color: red;
}
答案 2 :(得分:0)