vux
vux copied to clipboard
[Bug Report] 日期时间选择控件的内容字体颜色被固定为`#999`
VUX version
2.9.2
OS/Browsers version
All operating system / All browser
Vue version
2.5.17
Code
<template>
<group class="form" label-width="4.5em" label-margin-right="1em" label-align="right">
<x-input title="姓  名" v-model="name"
placeholder="请填写姓名">
</x-input>
<datetime title="出生日期" v-model="birthday"
placeholder="请选择出生日期" value-text-align="left"
format="YYYY-MM-DD">
</datetime>
</group>
</template>
<script>
import {
Group,
XInput,
Datetime,
} from 'vux';
export default {
name: 'test-form',
components: {
Group,
XInput,
Datetime,
},
data() {
return {
name: '',
birthday: '',
};
},
};
</script>
<style>
.form {
color: red;
}
</style>
Steps to reproduce
- 创建一个简单的Vue项目;
- 使用上述代码实现一个简单的表单,包含一个
XInput
和一个Datetime
控件; - 将
.form
的字体颜色设置为红色; - 表单上的
XInput
控件的标题字体为红色,输入的内容字体也为红色; - 但
Datetime
控件的标题字体颜色永远固定为黑色(此问题已在 #3259 中报告),且选择后显示的日期的字体颜色永远固定位#999
; - 从源码上来看,这是因为
.vux-cell-value
的字体颜色被设置为固定的#999
,应该设置为inherit
What is Expected?
表单上的XInput
控件的标题字体为红色,,输入的内容字体也为红色;
Datetime
控件的标题字体颜色应该是红色,且选择后显示的日期的字体颜色也应该是红色;
What is actually happening?
表单上的XInput
控件的标题字体为红色,,输入的内容字体也为红色;
Datetime
控件的标题字体颜色固定为黑色,且选择后显示的日期的字体颜色固定为#999
;
这个bug的根源在于日期时间控件中显示选择值的元素应该具有CSS类 .weui-input
而不是 .vux-cell-value
,因为本质上日期时间选择控件也是个输入框,应该和其他输入框样式一致。
好吧,仔细看了源码,最后发现是 Datetime
控件模板部分html的写法没有遵循WeUI的标准,写的太乱了。重写了一遍。