diff --git a/src/BootstrapBlazor.Server/Components/Samples/Cards.razor.cs b/src/BootstrapBlazor.Server/Components/Samples/Cards.razor.cs index b73e7a09938..a236ed063ce 100644 --- a/src/BootstrapBlazor.Server/Components/Samples/Cards.razor.cs +++ b/src/BootstrapBlazor.Server/Components/Samples/Cards.razor.cs @@ -49,6 +49,14 @@ private AttributeItem[] GetAttributes() => DefaultValue = " — " }, new() + { + Name = nameof(Card.HeaderPaddingY), + Description = Localizer["HeaderPaddingY"], + Type = "string?", + ValueList = " — ", + DefaultValue = " — " + }, + new() { Name = "Color", Description = Localizer["Color"], diff --git a/src/BootstrapBlazor.Server/Locales/en-US.json b/src/BootstrapBlazor.Server/Locales/en-US.json index 4f37e453817..cf04c51a796 100644 --- a/src/BootstrapBlazor.Server/Locales/en-US.json +++ b/src/BootstrapBlazor.Server/Locales/en-US.json @@ -3803,7 +3803,8 @@ "CollapsibleTitle": "Collapsible", "CollapsibleHeaderTemplate": "Header Template", "CollapsibleBody": "Click card hader for collapse/expand card body", - "ShadowBody": "Shadow effect sample" + "ShadowBody": "Shadow effect sample", + "HeaderPaddingY": "Header top and bottom padding" }, "BootstrapBlazor.Server.Components.Samples.Calendars": { "Title": "Calendar", diff --git a/src/BootstrapBlazor.Server/Locales/zh-CN.json b/src/BootstrapBlazor.Server/Locales/zh-CN.json index a88bce61268..0b8641c68f5 100644 --- a/src/BootstrapBlazor.Server/Locales/zh-CN.json +++ b/src/BootstrapBlazor.Server/Locales/zh-CN.json @@ -3803,7 +3803,8 @@ "CollapsibleTitle": "可以收缩展开的卡片", "CollapsibleBody": "点击 Header 收缩/展开", "CollapsibleHeaderTemplate": "这里是模板", - "ShadowBody": "阴影特效示例" + "ShadowBody": "阴影特效示例", + "HeaderPaddingY": "Header 上下内边距" }, "BootstrapBlazor.Server.Components.Samples.Calendars": { "Title": "Calendar 日历框", diff --git a/src/BootstrapBlazor/Components/Card/Card.razor b/src/BootstrapBlazor/Components/Card/Card.razor index d0ae6a43d92..bb4d614f0f3 100644 --- a/src/BootstrapBlazor/Components/Card/Card.razor +++ b/src/BootstrapBlazor/Components/Card/Card.razor @@ -2,7 +2,7 @@ @inherits BootstrapModuleComponentBase @attribute [BootstrapModuleAutoLoader(JSObjectReference = true)] -
+
@if (HeaderTemplate != null || !string.IsNullOrEmpty(HeaderText)) {
@@ -33,7 +33,7 @@ }
} -
+
@if (IsCollapsible) {
diff --git a/src/BootstrapBlazor/Components/Card/Card.razor.cs b/src/BootstrapBlazor/Components/Card/Card.razor.cs index a80f9f883eb..3db0a913999 100644 --- a/src/BootstrapBlazor/Components/Card/Card.razor.cs +++ b/src/BootstrapBlazor/Components/Card/Card.razor.cs @@ -49,6 +49,13 @@ public partial class Card .AddClass("text-muted", IsCenter) .Build(); + /// + /// 获得/设置 Card Header 高度 padding Y轴值 默认 null + /// 单位需自行给定 如 0.25rem + /// + [Parameter] + public string? HeaderPaddingY { get; set; } + /// /// 获得/设置 收缩展开箭头图标 默认 fa-solid fa-circle-chevron-right /// @@ -119,6 +126,10 @@ public partial class Card [NotNull] private IIconTheme? IconTheme { get; set; } + private string? HeaderStyleString => CssBuilder.Default() + .AddStyle("--bs-card-cap-padding-y", HeaderPaddingY) + .Build(); + /// /// /// diff --git a/test/UnitTest/Components/CardTest.cs b/test/UnitTest/Components/CardTest.cs index e6a82d64ade..f4ca964c6b4 100644 --- a/test/UnitTest/Components/CardTest.cs +++ b/test/UnitTest/Components/CardTest.cs @@ -14,6 +14,12 @@ public void Header_Ok() { var cut = Context.RenderComponent(builder => builder.Add(a => a.HeaderTemplate, CreateComponent())); Assert.Contains(Content, cut.Markup); + + cut.SetParametersAndRender(pb => + { + pb.Add(a => a.HeaderPaddingY, "0.25rem"); + }); + cut.Contains("--bs-card-cap-padding-y: 0.25rem;"); } [Fact] diff --git a/test/UnitTest/Components/DisplayTest.cs b/test/UnitTest/Components/DisplayTest.cs index 9cac91323d1..35dd8e71166 100644 --- a/test/UnitTest/Components/DisplayTest.cs +++ b/test/UnitTest/Components/DisplayTest.cs @@ -214,7 +214,7 @@ public void Bind_Ok() }); }); }); - Assert.Contains("
test-name
姓名
", cut.Markup); + Assert.Contains("
test-name
姓名
", cut.Markup); } [Fact] diff --git a/test/UnitTest/Components/InputTest.cs b/test/UnitTest/Components/InputTest.cs index ce128891938..913d52482a1 100644 --- a/test/UnitTest/Components/InputTest.cs +++ b/test/UnitTest/Components/InputTest.cs @@ -321,7 +321,7 @@ public void InputGroup_Width() })); }); - cut.MarkupMatches("
BootstrapInputGroup
"); + cut.MarkupMatches("
BootstrapInputGroup
"); } [Fact]