我试图在vaadin-date-picker中禁用所有月份的所有日期。在查看代码时,我发现我可以通过在disabled
中设置vaadin-month-calendar.html#L75来单独禁用日期。在这种情况下,禁用日期会消失,这是由于vaadin-month-calendar-styles.html#L119,并且无法再选择禁用日期。
同样,我做了以下,
<div id="days" part="days" disabled>
<template is="dom-repeat" items="[[_days]]">
<div part="date" today$="[[_isToday(item)]]" selected$="[[_dateEquals(item, selectedDate)]]" focused$="[[_dateEquals(item, focusedDate)]]" date="[[item]]" disabled$="[[!_dateAllowed(item, minDate, maxDate)]]" role$="[[_getRole(item)]]" aria-label$="[[_getAriaLabel(item)]]" aria-disabled$="[[_getAriaDisabled(item, minDate, maxDate)]]">[[_getDate(item)]]</div>
</template>
</div>
并添加了所需的样式:
[part="days"][disabled] {
color: var(--lumo-disabled-text-color);
}
在这种情况下,所有月份的所有日期都会消失,但用户仍然可以选择它们。我错过了什么吗?如何使残疾日期也不可选?
好的,我发现它,只需要添加pointer-events: none;