El problema es que no estás definiendo la unidad de medida del estilo. Así funciona:
Código PHP:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
<script>
function grande()
{
document.getElementById('prova').style.width = '500px';
}
function nano()
{
document.getElementById('prova').style.width = '200px';
}
</script>
</head>
<body>
<div style="width:300px; height:400px; background-color:#FF0000;" id="prova" name="prova"></div>
<p onMouseOver="javascript:grande();">grande</p>
<p onMouseOver="javascript:nano();">nano</p>
<!--<iframe src="prova.php" width="700" height="300" align="center" scrolling="no" frameborder="0">-->
</body>
</html>
(500
px-200
px)