网站首页 > 知识剖析 正文
仅做为记录,在BootStrapBlazor版本为8.3.10及以前时,组件中最外层div设置高度为100%时,可以获取到正常的高度,在里面的两个div中,一个设置固定的高度,另一个采用绝对定位,不设置高度,便可以实现充满浏览器全屏的功能,固定高度的div用于查询增加之类的文本框和按钮,绝对定位的div用于放一个显示查询结果的表格组件。
但是不能升级,如果升级到新版本后,最外层的div高度为100%时就无效,只会显示最小的高度,只关注里面的div部分即可,示例代码下:
<div style="position:relative;height:100%;">
<div style="height:60px;">
<GroupBox hidden="@isShow">
<div class="row g-3 form-inline">
<div class="col-12 col-sm-1">
<BootstrapInput @bind-Value="@name" PlaceHolder="员工姓名..." maxlength="8" ShowLabel="false" />
</div>
<div class="col-12 col-sm-2">
<DateTimeRange Value="@kq_date" ShowToday="true" />
</div>
<div class=" btn-group col-12 col-sm-2">
<Button Text="搜索" OnClick="QueryBtn" Color="Color.Success" Icon="fas fa-arrows-rotate"></Button>
<Button Text="重置" OnClick="ResetBtn" Color="Color.Warning" Icon="fas fa-eraser"></Button>
</div>
</div>
</GroupBox>
<Alert Color="Color.Primary" hidden="@isError">没有权限,如需要使用此功能请联系管理员!</Alert>
</div>
<div style="position:absolute;top:60px;bottom:5px;">
<Table TItem="KaoQin" PageItemsSource="PageItemsSource" IsFixedHeader="true" ShowSearch="false" ShowEmpty="true" SearchMode="SearchMode.Top" ShowSearchButton="false" hidden="@isShow"
IsPagination="true" AllowResizing="false" ShowColumnList="true" EmptyText="亲,没有查询到需要的数据!" @ref="Table" HeaderStyle="TableHeaderStyle.Dark"
IsStriped="true" IsBordered="true" DoubleClickToEdit="false" AllowDragColumn="true" ShowToastAfterSaveOrDeleteModel="false"
ShowAddButton="true" ShowEditButton="@isEdit" ShowDeleteButton="false" EditModalTitle="保存更改"
ShowToolbar="false" IsMultipleSelect="true" ShowExtendButtons="false" EditDialogIsDraggable="false" EditDialogSize="Size.Large" AddModalTitle="增加新的资料"
OnQueryAsync="@OnSerchAsync">
<TableColumns>
<TableColumn @bind-Field="@context.姓名" Text="姓名" Align="Alignment.Center" />
<TableColumn @bind-Field="@context.打卡方式" Text="打卡方式" Align="Alignment.Center" />
<TableColumn @bind-Field="@context.打卡时间" Text="打卡时间" Align="Alignment.Center" FormatString="yyyy-MM-dd hh:mm:ss" />
<TableColumn @bind-Field="@context.工号" Text="工号" Align="Alignment.Center" />
<TableColumn @bind-Field="@context.部门" Text="部门" Align="Alignment.Center" />
</TableColumns>
</Table>
</div>
</div>
这个示例代码本身没有问题,也不需要修改,网上找了找原因,说是需要对外层的body、html设置高度后才可以。
对于Blazor页面来说,它的外层就是默认的那个模版文件,那我们在模版文件中设置好外层元素的高就可以了,结果发现设置了body、html后不起作用,只能按F12键审查网页元素,看一下页面的上一层元素叫什么。
发现它的外层div的类名是tabs-body-content,那就直接在模板文件中设置这个的高度为100%,试一下效果
.tabs-body-content
{
height:100%;
margin:0;
}
增加上这段样式文件后,发现界面布局又恢复正常了,可以给Div加上颜色来查看它的实际大小,刚开始还以为是里面的那个绝对定位的div失效导致的了,折腾了好久。
- 上一篇: 前端开发技术面试——情景版
- 下一篇: Grid.js - 跨框架的前端表格插件
猜你喜欢
- 2025-01-12 今年最常见的前端面试题,你会做几道?
- 2025-01-12 CSS3快速入门:四、盒子模型
- 2025-01-12 domutils工具库的使用方法介绍
- 2025-01-12 Grid.js - 跨框架的前端表格插件
- 2025-01-12 前端开发技术面试——情景版
- 2025-01-12 Python3 网络爬虫:漫画下载,动态加载、反爬虫这都不叫事
- 2025-01-12 轻松掌握 Vue render 函数:简单易懂的使用指南
- 2025-01-12 div标签添加滚动条
- 2025-01-12 selenium中的Xpath元素定位方法
- 2025-01-12 JS原生DOM基本操作(下)
- 最近发表
-
- 表格存储 SQL 查询多元索引(表格存储 sql 查询多元索引的方法)
- 数据库教程-SQL Server多条件模糊查询
- Twitch宣布放弃Flash并逐步转型至HTML5平台
- 移动平台最强播放器MX Player:终于支持安卓5.0了!
- win10 NFS+黑群晖远程加载管理Windows文件夹(读写NTFS格式+高清播放器)
- Android端VLC 3.3版本发布,重新设计播放器界面
- 不仅仅被苹果封杀!Youtube宣布迁移Flash
- 揭开网站背后的魔法:B/S系统原来这么简单!
- Adobe Animate (An) 2020网页设计软件下载和安装教程
- Adobe发布“巨量”安全更新:遏制Flash“祸害”Linux
- 标签列表
-
- xml (46)
- css animation (57)
- array_slice (60)
- htmlspecialchars (54)
- position: absolute (54)
- datediff函数 (47)
- array_pop (49)
- jsmap (52)
- toggleclass (43)
- console.time (63)
- .sql (41)
- ahref (40)
- js json.parse (59)
- html复选框 (60)
- css 透明 (44)
- css 颜色 (47)
- php replace (41)
- css nth-child (48)
- min-height (40)
- xml schema (44)
- css 最后一个元素 (46)
- location.origin (44)
- table border (49)
- html tr (40)
- video controls (49)