No es problema del
CSS el tag
<p> equivale a parrafo, por ende "hace ese enter".
Proba con esto:
Código HTML:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>
<title>Capas</title>
<LINK REL="stylesheet" TYPE="text/css" HREF="lib/estilos.css">
</head>
<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<div id="todo">
<div id="cabecera">Cabecera</div>
<div id="menu">
<p><?php include ('menu.php'); ?></p>
</div>
<div id="derecha">
<div id="menu_opciones">
<span>Submenú</span>
</div>
<div id="principal">
</div>
</div>
</div>
</body>
</html>
y esto otro:
Código HTML:
#menu_opciones{
width:100%;
/*height:30px !important; */
background-color:red;
}