不同分辨率调整div高度

不同分辨率调整div高度

问题

在做easyui 表格页面时,一般是页面上半部分为搜索框部分,有时候由于搜索条件很多,在分辨率下正常的显示成一排,但在低分辨率下,搜索框区域会出现滚动条,而且你设置了不出现滚动条时,则有一部分搜索条件会被隐藏(-.-|最大可能是搜索和重置按钮被隐藏).

ps:这里我没使用table布局,因为table定的太死了,遇到一些极端的问题,变形太严重而且还不好解决,所以我的搜索区域布局为:inlinke-block布局

<div data-options="region:'north'" id="searchPanel"
                >
                <form id="searchForm" method="post">
                    <div style="padding-left: 4px; padding-top:5px;display: inline-block;">
                        <label>机构名称:</label>
                        <input style="width: 96px;" class="easyui-textbox" name="orgName"></input>
                    </div>
                    <div style="padding-left: 4px; padding-top:5px;display: inline-block;">
                        <label>机构等级:</label>
                        <select id="search_hospitalLevel" name="hospitalLevel"></select>
                    </div>
                    <div style="padding-left: 4px; padding-top:5px;display: inline-block;">
                        <label>机构等次:</label>
                        <select id="search_hospitalOrder" name="hospitalOrder"></select>
                    </div>
                    <div style="padding-left: 4px;padding-top:5px;display: inline-block;">
                        <a href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-search'" id="btnSearch">查询</a>
                        <a href="javascript:void(0)" class="easyui-linkbutton" data-options="iconCls:'icon-redo'" id="btnResetSearch">重置</a>
                    </div>
                </form>
            </div>

解决

加个样式:

@media screen and (max-width: 1920px){
    #searchPanel{height:40px!important}
      }

@media screen and (max-width: 1440x) {
    #searchPanel{height: 80px!important}
      }

注意:
max-width并不是分辨率,只是在现有的分辨率你的页面最大可用屏幕宽度

### 不同屏幕分辨率下的高度自适应实现方法 为了使网页在不同屏幕分辨率下能够保持良好的视觉效果,可以采用多种技术手段来调整高度的自适应。以下是几种常见的解决方案: #### 方法一:通过 JavaScript 动态设置高度 JavaScript 是一种强大的工具,可以通过它动态计算并设置 HTML 元素高度以适配不同的屏幕尺寸。 ```javascript window.onload = function () { const element = document.getElementById("adaptiveElement"); const screenHeight = window.innerHeight || document.documentElement.clientHeight; const screenWidth = window.innerWidth || document.documentElement.clientWidth; // 设置元素高度为屏幕高度的 85% element.style.height = `${screenHeight * 0.85}px`; // 如果需要宽度也自适应,则同样操作 element.style.width = `${screenWidth * 0.85}px`; }; ``` 这种方法利用 `window` 对象获取当前窗口的高度和宽度,并将其应用到指定的 DOM 元素上[^3]。 --- #### 方法二:使用 CSS 的视口单位 (`vh`, `vw`) CSS 提供了基于视口大小的相对长度单位——`vh` 和 `vw`,它们分别表示视口高度和宽度的百分比。这种方式无需依赖 JavaScript 即可轻松实现高度自适应。 ```css .adaptive-height { height: 85vh; /* 设定高度为视口高度的 85% */ } ``` 这种方案简单高效,在现代浏览器中有很好的兼容性[^2]。 --- #### 方法三:媒体查询配合固定比例设定 如果希望根据不同屏幕尺寸提供更加精细的控制,可以结合媒体查询定义多个断点,并分别为这些断点设计特定的高度值。 ```css /* 默认情况 */ .adaptive-element { height: auto; } /* 小型设备 */ @media (max-width: 480px) { .adaptive-element { height: calc(100vh - 50px); /* 调整高度减去顶部导航栏或其他占位空间 */ } } /* 中型设备 */ @media (min-width: 481px) and (max-width: 768px) { .adaptive-element { height: 90vh; /* 更高的利用率 */ } } /* 大型设备 */ @media (min-width: 769px) { .adaptive-element { height: 85vh; /* 较大屏幕上保留更多空白区域 */ } } ``` 以上代码片段展示了如何根据屏幕尺寸变化灵活调整目标元素高度[^2]。 --- #### 方法四:借助前端框架(如 Bootstrap) 许多流行的前端框架已经内置了响应式布局的支持功能,开发者只需遵循相应类名即可快速构建跨平台友好的界面。 例如,在 **Bootstrap** 中可以直接运用栅格系统以及预设的实用程序类完成高度自适应的任务: ```html <div class="h-100"> <!-- h-100 表示该容器占据父级容器全部高度 --> </div> ``` 或者组合其他辅助类进一步优化表现形式[^1]。 --- ### 总结 无论是选用原生 JS 技术手动控还是依靠现代化 CSS 特性和第三方库简化开发流程,都可以有效达成多分辨率环境中的高度自适应需求。具体选择取决于项目复杂程度和个人偏好等因素综合考量之后决定最佳实践路径。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值