rt
现在有一个手机web , psd 设计稿是 640x1130 (w/h) 的, 现在要求是能在各种大小屏幕的手机里,不出现滚动条, 设计稿里的图片和按钮不被拉长和压扁,就是要等比缩放;
我第一次的做法就是 width:100%, height:100% 然后计算设计稿的图片占的百分比写的css 样式,在不同的手机里,页面里元素均出现不同的拉长或压扁 ,被打回重做
我现在的思路是 在 body 里先做一个 长宽比为 1136/640 的容器,然后把页面中的元素在这个容器里,在按百分比布局,现在问题是 这个1136/640 的容器,什么时候给他设置长宽比? 我的实现步骤就是用 zepto.js
$(document).ready(function(){ // code //...在屏幕中间,取出一个面积最大的 1136/640的容器,然后使其居中,左右留白})
但这样一来,页面dom都加载完了,才做这个动作,有点晚了, 我下面的想法就是之前在 1136/640 容器里的标签,全部写在 js 里, 等容器设置好 1136/640 这个长宽比后,再将标签 append 到 这个容器里
不知道这个方法可行不,这样一来,后台程序该怎么写,我觉得这是个很糟糕的设计,求大神们给出宝贵的意见、建议、想法或者解决方案,不胜感激
回复讨论(解决方案)
请搜 响应式设计
简单的
复杂的用css媒体查询试试
@ 二楼, 三楼
这些都有的,我有接触, 但是目前市面这么多手机,媒体查询 如何是好啊
可能是我没把问题描述清楚:
psd 设计稿只有 640 x 1136 (wxh), 要求是
1.设计稿中的内容全屏显示,允许左右留白,下方留白
2.不能出现滚动条
3.在各种不同尺寸的手机上,设计稿的元素不能被压缩 拉伸,实现等比缩放
如下图, 如果响应式设计、 媒体查询能够实现的话,该怎么设置分界点,麻烦讲一下详细的步骤,谢谢
用js计算吧,设备高度减去头尾高度就是内容区域的高度了,设备宽度即内容区域宽度,然后按设计图的图片比例,计算到底是宽度较小还是高度较小(比如图片宽高比例2:3,即使内容区域尺寸为220:300,仍然认为是高度较小),然后以较小的那个尺寸计算图片尺寸即可(比如按高度计算,则不设置宽度令其自动缩放)
至于居中这些,相信不会有难度
用js计算吧,设备高度减去头尾高度就是内容区域的高度了,设备宽度即内容区域宽度,然后按设计图的图片比例,计算到底是宽度较小还是高度较小(比如图片宽高比例2:3,即使内容区域尺寸为220:300,仍然认为是高度较小),然后以较小的那个尺寸计算图片尺寸即可(比如按高度计算,则不设置宽度令其自动缩放)
至于居中这些,相信不会有难度
嗯 , 谢谢,基本我们找到共同点了,我也是这么考虑的,但是代码实现,我应该是在dom 加载完后 读取 显示区域的宽 高比吧,若用两套css , 就是浏览器宽高比 大于图片宽高比的时候,一套css, 小于的时候,另一个套css, 如何引用所需要的样式文件呢 ?
百分比图片变形的话,你只要给图片设置宽度百分比,不要设置高度就好了
外层容器
上
中(9宫格子)
下
布局
假定 上 中 下 三个区域 全部是相对 外层容器
上中下 三个 全部用百分比设置
9宫格全部是 33%宽高
1)你要控制的就是 外层容器的大小 css或者js 随便
2) 全部等比缩放是不可能的 比如 上 那幅图 在等比例 拉伸情况下 必然发生 有部分边缘不能显示
另外 要考虑 设备横过来时候 外层容器大小的定义
是继续 满屏 还是 高度满屏 宽度比例拉伸剧中 还是 设置 min-height
百分比图片变形的话,你只要给图片设置宽度百分比,不要设置高度就好了
嗯嗯,主要问题是对整个页面的设置

htmltagsareessentialforwebdevelopmentasthuctureandenhancewebpages.1) thefinelayout, semantics 및 internactivity.2) semantictagsimproveAccessibility 및 sseo.3) appleasoftagscanoptimizeperformanceandenseRocRossercompatiber.

일관된 HTML 인코딩 스타일은 코드의 가독성, 유지 가능성 및 효율성을 향상시키기 때문에 중요합니다. 1) 소문자 태그 및 속성 사용, 2) 일관된 압입 유지, 3) 단일 또는 이중 인용문을 선택하고 고수하십시오. 4) 프로젝트에서 다양한 스타일을 혼합하지 않으십시오.

솔루션 Bootstrap4에서 다중 프로 젝트 회전 목마를 구현하는 것은 부트 스트랩 4에서 멀티 프로 젝트 회전 목마를 구현하는 것은 쉬운 일이 아닙니다. 부트 스트랩 ...

마우스 스크롤링 이벤트 침투의 효과를 달성하는 방법은 무엇입니까? 웹을 탐색하면 종종 특별한 상호 작용 디자인이 발생합니다. 예를 들어, DeepSeek 공식 웹 사이트에서 � ...

HTML 비디오의 기본 재생 제어 스타일은 CSS를 통해 직접 수정할 수 없습니다. 1. JavaScript를 사용하여 사용자 정의 컨트롤을 만듭니다. 2. CSS를 통해 이러한 통제를 아름답게합니다. 3. video.js 또는 plyr와 같은 라이브러리를 사용하여 호환성, 사용자 경험 및 성능을 고려하면 프로세스를 단순화 할 수 있습니다.

휴대 전화에서 기본 선택을 사용하는 데있어 잠재적 인 문제는 모바일 애플리케이션을 개발할 때 종종 상자를 선택해야 할 필요가 있습니다. 일반적으로 개발자 ...

휴대 전화에서 기본 선택을 사용하는 단점은 무엇입니까? 모바일 장치에서 애플리케이션을 개발할 때는 올바른 UI 구성 요소를 선택하는 것이 매우 중요합니다. 많은 개발자 ...

Three.js 및 Octree를 사용하여 방에서 3 인칭 로밍의 충돌 처리를 최적화하십시오. 3.js의 Octree를 사용하여 방에서 3 인칭 로밍을 구현하고 충돌을 추가하십시오 ...


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

드림위버 CS6
시각적 웹 개발 도구

Dreamweaver Mac版
시각적 웹 개발 도구

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
