js和css实现手机横竖屏预览思路整理

实现效果,如上图。

首先,实现手机页面在PC端预览, 则先在网上找到一个手机的背景图片,算好大概内间距,用来放预览的页面,我这里是给手机预览页面的尺寸按iphone5的尺寸来的;

一个手机页面在这里预览,要通过<iframe>标签,左边选择不同的select选项,通过监听select选项的值,在js中动态改变iframe的src来实现;

因为要实现横屏和竖屏的预览,切记,千万不能在点击横屏的时候,把竖屏的页面旋转90度,这样是没有效果的,因为预览页面的本身还是竖屏的,只是页面跟着一起旋转了90度,要单独另外写一个横屏的box,宽度大于高度的,这样当预览页面识别到宽度大于高度,即按横屏的效果展示;

我这里实现思路是把横屏的div默认display:none;默认选择竖屏的时候,就直接把竖屏的box下的iframe的url和横屏模式下的iframe的url一起改变了,当选择横屏的时候,展示横屏的box,隐藏竖屏的box,但是事实是横屏的此时不会展示页面,而是空白,而在默认选择了横屏的情况下,去切换其他页面的时候,其他横屏可以正常展示,我想原因是,box从display:none到展示出来,iframe没有识别到应该有的横屏的宽度,所以最后改为了默认把横屏的opacity的透明度设为0,则切换的时候通过切换透明度来进行展示,让默认直接把iframe的url可以渲染到对应宽度的盒子中。横屏与竖屏通过定位放在同一个位置即可。

原文地址:https://www.cnblogs.com/beileixinqing/p/9892343.html

时间: 2024-10-07 13:16:18

js和css实现手机横竖屏预览思路整理的相关文章

检测手机横竖屏切换

我们做移动端项目的时候,为了更好的完善用户体会,经常会需要处理好手机横竖屏时候的效果,下面看一下通过代码如何判断手机是否是横竖屏,两种方式: 一.第一种方式: <style type="text/css">body,html { margin: 0; height: 100%; position: relative; overflow: hidden;} #box { width: 100%; height: 100%; font-size: 20px; position:

css3完美解决手机横竖屏判断,让用户看邀请函更爽

html: <div id="cover1"></div> <p id="cover1w">亲,请竖屏观看本屏内容,谢谢^_^</p> css: /* 判断手机横竖屏  */ @media screen and (orientation:portrait) { /*  css[竖向定义样式]  */ #cover1{display: none;width: 100%;height: 100%;background-co

判断手机横竖屏

//判断手机横竖屏状态:window.addEventListener("onorientationchange" in window ? "orientationchange" : "resize", function() { if (window.orientation === 180 || window.orientation === 0) { //竖屏 } if (window.orientation === 90 || window.o

js 实现全屏预览(F11功能)--转

js代码 1 function fullScreen(el) { 2 var rfs = el.requestFullScreen || el.webkitRequestFullScreen || el.mozRequestFullScreen || el.msRequestFullScreen, 3 wscript; 4 5 if(typeof rfs != "undefined" && rfs) { 6 rfs.call(el); 7 return; 8 } 9 1

Javascript 判断手机横竖屏状态

判断手机横竖屏状态: <script type=”text/javascript”> function hengshuping(){ if(window.orientation==180||window.orientation==0){ alert(“竖屏状态!”) } if(window.orientation==90||window.orientation==-90){ alert(“横屏状态!”) } } window.addEventListener(“onorientationcha

图片无损放大软件PhotoZoom分屏预览功能 ,简直好用!

PhotoZoom是一款智能放大图片软件,很多用户在初次使用PhotoZoom,发现图片所处的区域上方有四个不同方式的预览选项.因为很多初学者使用时不明白这四个按钮有什么作用,所以小编接下来讲解一下PhotoZoom的分屏预览功能. 使用分屏按钮可将预览窗口分成不同部分.每个部分可以单独更改不同的调整大小方法.这样您就可以同时预览不同调整方法的结果,进行实时对比.例如,您可以对比 S-Spline XL 方法与双立方插值方法的异同,或选择两种 S-Spline XL 预设互相对比. 您可以使用以

zepto判断手机横竖屏

var CheckOrientation = (function(){ var win = $( window ), get_orientation, last_orientation, initial_orientation_is_landscape, initial_orientation_is_default, portrait_map = { "0": true, "180": true }, ww, wh, landscape_threshold; if(

Android和IOS的简单嗅探,以及横竖屏的捕获思路

一般通过navigator.userAgent来嗅探Android系统和IOS系统: if(/android/i.test(navigator.userAgent)){ //android } if(/iphone/ipad/mac/i.test(navigator.userAgent)){ //ios } Android和IOS在横竖屏感测上的差异: Android: 90度  -90度为竖屏,0度  180度为横屏. IOS: 0度  180度为竖屏,90度  -90度为横屏. 移动端的浏览

用openoffice+jodconverter+webuploader+pdf.js实现文件上传、在线预览功能

一.背景 最近公司一个项目要实现一个文件上传以及多文档在线预览的功能,之前一直做无线工具开发的,没有涉及到这些东西.另外项目组缺java开发人员,而且自己也只是一个半吊子前端加小半吊子java开发人员,所以让我一个人先弄个Demo出来瞧瞧.在网上搜索了不少资料,在这里只是整理一下,留作以后查阅. 二.插件以及工具包 1.pdfjs-v1.7.225  前端pdf格式文件的显示组件 2.webuploader-0.1.5  百度的文件上传组件 3.video-js-6.2.5 html5视频播放组