Javascript 相对于屏幕大小的div大小

Javascript 相对于屏幕大小的div大小,javascript,jquery,css,html,Javascript,Jquery,Css,Html,我正在用JQuery Mobile和Phonegap编程一个html5应用程序。我想在许多不同的设备上运行它们。正因为如此,我想拥有与屏幕大小相关的一切 <div id="pos" data-role="content" style="border: 5px solid silver; margin-left: auto; margin-right: auto; width: 250px; height: 250px;"> 我使用这个div元素在里面显示一个谷歌

我正在用JQuery Mobile和Phonegap编程一个html5应用程序。我想在许多不同的设备上运行它们。正因为如此,我想拥有与屏幕大小相关的一切

<div id="pos" data-role="content"
        style="border: 5px solid silver; margin-left: auto; margin-right: auto; width: 250px; height: 250px;">

我使用这个div元素在里面显示一个谷歌地图,周围有一个小边框

如何调整屏幕大小,例如80%的屏幕大小

我试过宽度:90%;身高:90%,但结果真的很糟糕。它不是相对于屏幕,而是相对于内容

边框的大小是5px,是否可以在这里插入一个很好的参数,使其与屏幕大小相关

我希望有人能帮忙


谢谢

设置为
width:100%
的html元素延伸到其父元素宽度的
100%
。您需要确保包含元素的宽度也是
100%

您还需要使
html
body
宽度
100%

例如:

html, body { width: 100%; }
#pos { width: 80%; }

本例假设#pos元素在主体上是笔直的。

如果不想使用js,可能需要定义父元素的高度和宽度 这里我在JSFIDLE上做了一个示例

看起来不错,所以我认为问题在于JQuery!以下是我在本页的完整代码:

<!DOCTYPE html>
<html>
<head>
<title> App</title>
<script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
<meta name="viewport" content="width=device-width, initial-scale=1">

<link rel="stylesheet" href="jquery.mobile-1.1.1.min.css" />
<script src="jquery-1.7.2.min.js"></script>
<script src="jquery.mobile-1.1.1.min.js"></script>

<style>

  html, body, geolocation { width: 100%; height: 100%; } 
  #pos { width: 80%; height: 80%; } 

</style>
</head>

 <body>
<div data-role="page" id="geolocation" data-theme="a">
    <h2 align="center">Geolocation</h2>
    <div data-role="header" data-position="fixed" data-theme="a">
        <h1>Car Data</h1>
    </div>

    <div id="pos" data-role="content" style="border: 5px solid silver;">
        Deine Position wird ermittelt...</div>

    <script type="text/javascript" src="geolocation.js"></script>


    <div data-role="footer" data-position="fixed" data-id="persFooter">
        <div data-role="navbar">
            <ul>
                <li><a href="home.html" data-icon="home">Connect</a></li>
                <li><a href="carView.html" data-icon="gear">Vehicles</a></li>
                <li><a href="infoView.html" data-icon="info">Info</a></li>
            </ul>
        </div>
    </div>


<script>                                       
    $('#geolocation').on('swipeleft',function(){ 
     $.mobile.changePage("fuelGauge.html", { transition: "slide"}); 
     console.log('slideLeft');
    })  

    $('#geolocation').on('swiperight',function(){ 
     $.mobile.changePage("batteryStatus.html", { transition: "slide", reverse: 'true'});    
     console.log('slideLeft');
    })                                       
</script>
</div>



  </body>
  </html>

应用程序
html,正文,地理位置{宽度:100%;高度:100%;}
#位置{宽度:80%;高度:80%;}
地理定位
汽车数据
带终端的数据线位置。。。
$('#geolocation')。on('swipleft',function(){ $.mobile.changePage(“fuelGauge.html”,{transition:“slide”}); console.log('slideLeft'); }) $('#geolocation')。在('swiperight',function(){ $.mobile.changePage(“batteryStatus.html”{转换:“幻灯片”,反转:“true}); console.log('slideLeft'); })
在使用手机时,这两者的具体区别是什么?你要在你的移动设备上调整浏览器的大小吗?为什么这不起作用?它显示一个100%宽度的div,高度为文本hashtml,body,geolocation{width:100%;height:100%;}#pos{width:80%;height:80%;}将计算您的位置的geolocation Car数据……它在Chrome中运行良好,仅使用您提供的html。你正在用哪个浏览器进行测试?安卓4.1.1上的安卓WebView,这会导致问题吗?请尝试以下全部代码:--html,body,geolocation{width:100%;height:100%;}pos{width:80%;height:80%;}地理定位汽车数据将计算出你的位置。。。