


Respuesta corta: Si
Respuesta larga: Si, pero recuerda que HTML5 no para de evolucionar y las implementaciones de los navegadores moviles aun estan en desarrollo, no va a ser un camino de rositas...
Vamos a repasar algunos de los frameworks que hemos citado:
<html>
<head>
<title>Kilo</title>
<link type="text/css" rel="stylesheet" media="screen" href="jqtouch/jqtouch.css">
<link type="text/css" rel="stylesheet" media="screen" href="themes/jqt/theme.css">
<script type="text/javascript" src="jqtouch/jquery.js"></script>
<script type="text/javascript" src="jqtouch/jqtouch.js"></script>
<script type="text/javascript">
var jQT = $.jQTouch({
icon: 'kilo.png',
statusBar: 'black'
});
</script>
</head>
<body>
<div id="home">
<div class="toolbar">
<h1>Kilo</h1>
</div>
<ul class="edgetoedge">
<li class="arrow"><a href="#about">About</a></li>
</ul>
</div>
<div id="about">
<div class="toolbar">
<h1>About</h1>
<a class="button back" href="#">Back</a>
</div>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title>Page Title</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.css" />
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
<script src="http://code.jquery.com/mobile/1.1.0/jquery.mobile-1.1.0.min.js"></script>
</head>
<body>
<div data-role="page">
<div data-role="header">
<h1>Page Title</h1>
</div><!-- /header -->
<div data-role="content">
<p>Page content goes here.</p>
</div><!-- /content -->
<div data-role="footer">
<h4>Page Footer</h4>
</div><!-- /footer -->
</div><!-- /page -->
</body>
</html>
<!doctype html>
<html manifest="APP.appcache">
<head>
<meta charset="utf-8">
<title>ToDo.js with LungoJS</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0;">
<link rel="stylesheet" href="../../release/lungo-1.2.min.css">
<link rel="stylesheet" href="../../release/lungo.theme.default.css">
</head>
<body class="app">
<section id="login">
<article class="splash indented">
<div>
<h1>ToDo.<span class="semi-opacity">js<span></h1>
<input type="text" placeholder="Type your user" />
<input type="password" placeholder="Type your password" />
<a href="#" id="btnLogin" class="button big" data-icon="key">Test Demo!</a>
</div>
</article>
</section>
<script src="../../release/lungo-1.2.packed.js"></script>
<script>
var App = (function(lng, undefined) {
lng.App.init({
name: 'ToDo.JS',
version: '0.1'
});
return {};
})(LUNGO);
</script>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<title>Hello World</title>
<script src="lib/touch/sencha-touch.js" type="text/javascript"></script>
<script type="text/javascript">
new Ext.Application({
launch: function() {
new Ext.Panel({
fullscreen: true,
dockedItems: [{xtype:'toolbar', title:'My First App'}],
layout: 'fit',
styleHtmlContent: true,
html: '<h2>Hello World!</h2>I did it!'
});
}
});
</script>
<link href="lib/touch/resources/css/sencha-touch.css" rel="stylesheet" type="text/css" />
</head>
<body></body>
</html>
...bueno alla vamos.
A veces, es interesante, ofrecer al usuario una experiencia diferente en función de la orientación de la pantalla

A la minima expresión:
<!DOCTYPE html>
<html>
<head>
<title>Orientacion Test</title>
</head>
<body>
<section class="page">
<div class="main">
<header><h1>Cabecera</h1></header>
<section class="content">
Contenido
</section>
</div>
<footer>
<nav>
<ul>
<li><a href="#A">A</a></li>
<li><a href="#B">B</a></li>
<li><a href="#C">C</a></li>
</ul>
</nav>
</footer>
</section>
</body>
</html>
Definimos un layout sencillo:
body, html,.page{
font-family: Arial, Helvetica, sans-serif;
height:100%;
}
header, footer{
background-color:#000; margin:0px; text-align: center;
padding:3px; color:#fff;
}
footer ul{
margin:0px; padding:0px; list-style: none;
min-height:60px;
}
footer li{
float:left; width:33%; border:solid 1px #fff;
}
footer li a{
color:#fff; text-decoration:none; width:100%;
display:block; padding-top:20px; padding-bottom:20px;
text-align: center;
}
section.content{
height:200px;
padding-top:100px;
font-size: 22px;
text-align: center;
}
Ahora la media query usa la orientacion del dispositívo para cambiar el menu de posición:
@media screen and (orientation:landscape) {
.main{
float:right;
width:70%;
height:100%;
}
footer{
float:left;
width:29%;
height:100%;
}
footer li{
float:none;
width:100%;
}
footer ul{
list-style: none;
height:100%;
}
}

Gracias a CSS3 y la propiedad background-size, podemos hacer ajustar el tamaño de las imagenes a la resolución de pantalla.
Veamos un ejemplo con iPhone 3GS, iPhone 4 y Samsung Gallaxy S2:
Queremos poner una imagen de fondo en varios dispositívos:

.fondo{
width: 100%; height: 100%;
background-image: url(test.png); /* Tamaño de la imagen 640x960 pixels */
background-size: 320px 480px;
}

.fondo{
width: 100%; height: 100%;
background-image: url(test.png); /* Tamaño de la imagen 640x960 pixels */
background-size: cover;
}
