如何覆盖 ng-bootstrap datepicker element.style
how to overwrite ng-bootstrap datepicker element.style
我正在使用 ng-bootstrap datepicker 并且遇到底部边框被切割的问题,这可能是因为嵌套的 div classes 被应用但我不想调查每个嵌套的 div class 来弄清楚,我想覆盖我通过 chrome 开发工具发现的 ng-datepicker 属性 (转换)导致问题。请查看 issue.so 的附件图片,在 chrome 中,当我单击日历图标时,显示的日期选择器底部边框被切掉,下面是 css/properties 正在应用
<ngb-datepicker class="dropdown-menu show" style="padding: 0px; position: absolute; top: 0px; left: 0px; transform: translate(0px, 28px);">
element.style {
padding: 0px;
position: absolute;
top: 0px;
left: 0px;
transform: translate(0px, 28px);
}
在 chrome 中,当我将变换 属性 更改为
transform: translate(0px, -42px)
已解决问题。我不想对样式进行硬编码,希望在 angular 6 中的 style.css 中定义 class 以便它应用于所有 ng-datepicker.How 以覆盖这个变换 属性?
您可以为 ngb-datepicker 设置一个 class 或 id 和特定的样式。
<ngb-datepicker class="dropdown-menu show mydatepicker">
在style.css
.mydatepicker{
padding: 0px;
position: absolute;
top: 0px;
left: 0px;
transform: translate(0px, -42px);
}
我终于能够在 style.css 中使用 !important 覆盖 ngbdatepicker,如下所示:
ngb-datepicker{
left: 0px !important;
top: 0px !important;
padding-top: 0px !important;
padding-right: 0px !important;
padding-bottom: 0px !important;
padding-left: 0px !important;
position: absolute !important;
transform: translate(0px, 28px)!important;
}
这是我的 HTML 片段
> <div class="q-datepicker position-relative w-100">
<input
formControlName="From"
class=" form-control rounded-corner bg-white primary-font-color"
placement="bottom"
placeholder=""
[minDate]=""
ngbDatepicker
#d="ngbDatepicker"
readonly=""
/>
<button
type="button"
(click)="d.toggle()"
>
<i class="far fa-calendar-alt"></i>
</button>
</div>
我添加到div标签"q-datepicker" class然后在style.css
中添加以下样式
.q-datepicker{
ngb-datepicker{
left:0 !important;
width: 350px;
.ngb-dp-months{
.ngb-dp-month{
width: 100%;
.ngb-dp-weekday{
width: 2.5rem;
margin-right: .5rem;
}
.ngb-dp-week{
.ngb-dp-day{
width: 2.5rem;
margin-right: .5rem;
div{
width: 100%;
}
}
}
}
}
}
}
<ngb-datepicker class="dropdown-menu show" style="padding: 0px; position: absolute; top: 0px; left: 0px; transform: translate(0px, 28px);">
element.style {
padding: 0px;
position: absolute;
top: 0px;
left: 0px;
transform: translate(0px, 28px);
}
在 chrome 中,当我将变换 属性 更改为
transform: translate(0px, -42px)
已解决问题。我不想对样式进行硬编码,希望在 angular 6 中的 style.css 中定义 class 以便它应用于所有 ng-datepicker.How 以覆盖这个变换 属性?
您可以为 ngb-datepicker 设置一个 class 或 id 和特定的样式。
<ngb-datepicker class="dropdown-menu show mydatepicker">
在style.css
.mydatepicker{
padding: 0px;
position: absolute;
top: 0px;
left: 0px;
transform: translate(0px, -42px);
}
我终于能够在 style.css 中使用 !important 覆盖 ngbdatepicker,如下所示:
ngb-datepicker{
left: 0px !important;
top: 0px !important;
padding-top: 0px !important;
padding-right: 0px !important;
padding-bottom: 0px !important;
padding-left: 0px !important;
position: absolute !important;
transform: translate(0px, 28px)!important;
}
这是我的 HTML 片段
> <div class="q-datepicker position-relative w-100">
<input
formControlName="From"
class=" form-control rounded-corner bg-white primary-font-color"
placement="bottom"
placeholder=""
[minDate]=""
ngbDatepicker
#d="ngbDatepicker"
readonly=""
/>
<button
type="button"
(click)="d.toggle()"
>
<i class="far fa-calendar-alt"></i>
</button>
</div>
我添加到div标签"q-datepicker" class然后在style.css
中添加以下样式.q-datepicker{
ngb-datepicker{
left:0 !important;
width: 350px;
.ngb-dp-months{
.ngb-dp-month{
width: 100%;
.ngb-dp-weekday{
width: 2.5rem;
margin-right: .5rem;
}
.ngb-dp-week{
.ngb-dp-day{
width: 2.5rem;
margin-right: .5rem;
div{
width: 100%;
}
}
}
}
}
}
}