diff --git a/article-dist.html b/article-dist.html
index 3d46981d66c706e6be1bb529c6b9658d11a6adf0..6ddbf150a29b8d2e5526baa10363c4859643d8e3 100644
--- a/article-dist.html
+++ b/article-dist.html
@@ -116,10 +116,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
 
 <!-- Une : derniers articles publies -->
 
diff --git a/auteur-dist.html b/auteur-dist.html
index b5860ccbfd17c0379917497362278b9c7dff2aeb..8fab45ed52d9b8430d61f0a92b2b399009bc975e 100644
--- a/auteur-dist.html
+++ b/auteur-dist.html
@@ -52,9 +52,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
 
 <!-- Une : affichage de l'auteur -->
 
diff --git a/breve-dist.html b/breve-dist.html
index 92ab3216e3f710cf6c933836b899415a1bb78f05..04ef2311c65f258851d31fadbd1fce5654a4baeb 100644
--- a/breve-dist.html
+++ b/breve-dist.html
@@ -111,11 +111,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 <!-- Contenu : corps de la breve -->
 
 <div class="contenu" id="principal">
diff --git a/forum-dist.html b/forum-dist.html
index 45f31bd1d708122e6d18418fbbdc851a8ae79bec..16dccb6f1b346bf8d5bffa3cfa5caf7cadf7862c 100644
--- a/forum-dist.html
+++ b/forum-dist.html
@@ -43,10 +43,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
 
 <!-- Contenu : poster un message dans le forum -->
 
diff --git a/inc-admin.php3 b/inc-admin.php3
index 7cf5cafc4b90eb1495464399d9a06ea0a0441293..816bc5e08ea5eea932bf37adc16c8ca8f312a578 100644
--- a/inc-admin.php3
+++ b/inc-admin.php3
@@ -31,12 +31,7 @@ function afficher_boutons_admin($pop='', $forcer_debug = false /* cas ou l'eval(
 		lang_select($lang);
 	}
 
-	// Feuilles de style admin : d'abord la CSS officielle, puis la perso,
-	// puis celle du squelette (.spip-admin, cf. impression.css)
-	$ret .= "<link rel='stylesheet' href='spip_admin.css' type='text/css' />\n";
-	if (@file_exists('spip_admin_perso.css')) $ret .= "<link rel='stylesheet' href='spip_admin_perso.css' type='text/css' />\n";
-	$ret .= '<div class="spip-admin-float">
-	<div class="spip-admin-bloc" dir="'.lang_dir($lang,'ltr','rtl').'">
+	$ret = '<div class="spip-admin-bloc" dir="'.lang_dir($lang,'ltr','rtl').'">
 	<div class="spip-admin">
 	<ul>';
 
@@ -99,7 +94,7 @@ function afficher_boutons_admin($pop='', $forcer_debug = false /* cas ou l'eval(
 		$ret .= $debug_messages;
 	}
 
-	$ret .= "</ul></div></div></div>";
+	$ret .= "</ul></div></div>\n";
 
 	lang_dselect();
 
@@ -110,14 +105,31 @@ function calcul_admin_page($cached, $texte) {
 
 	$a = afficher_boutons_admin($cached ? ' *' : '');
 
+	// Inserer la feuille de style selon les normes, dans le <head>
+	// Feuilles de style admin : d'abord la CSS officielle, puis la perso,
+	// puis celle du squelette (.spip-admin, cf. impression.css)
+	$css = "<link rel='stylesheet' href='spip_admin.css' type='text/css' />\n";
+	if (@file_exists('spip_admin_perso.css'))
+		$css .= "<link rel='stylesheet' href='spip_admin_perso.css' type='text/css' />\n";
+	if (eregi('<(/head|body)', $texte, $regs)) {
+		$texte = explode($regs[0], $texte, 2);
+		$texte = $texte[0].$css.$regs[0].$texte[1];
+	} else
+		$texte .= $css;
+
+	// Inserer les boutons admin dans la page
 	// La constante doit etre definie a l'identique dans inc-form-squel
 	// balise #FORMULAIRE_ADMIN ? sinon ajouter en fin de page
 	if (!(strpos($texte, '<!-- @@formulaire_admin@@45609871@@ -->') === false))
 		$texte = str_replace('<!-- @@formulaire_admin@@45609871@@ -->', $a, $texte);
-	else if (eregi('</(body|html)>', $texte, $regs))
-		$texte = str_replace($regs[0], $a.$regs[0], $texte);
-	else
-		$texte .= $a;
+	else {
+		$a = '<div class="spip-admin-float">'.$a."</div>\n";
+		if (eregi('</(body|html)>', $texte, $regs)){
+			$texte = explode($regs[0], $texte, 2);
+			$texte = $texte[0].$a.$regs[0].$texte[1];
+		} else
+			$texte .= $a;
+	}
 
 	return $texte;
 }
diff --git a/mot-dist.html b/mot-dist.html
index 294697dcb75494d13dc7a44db467ac453ece96d0..218be6dd08dbabc254e49dfabddcd8b41fe4c924 100644
--- a/mot-dist.html
+++ b/mot-dist.html
@@ -90,11 +90,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 <!-- Une : contenu du mot-cle -->
 
 <div class="contenu" id="principal">
diff --git a/plan-dist.html b/plan-dist.html
index 8770b0ad317e56426bdfa6ed8219246516849bc0..f9e739206dca6ec4d0b7226ddd7a6fd80f31ad5a 100644
--- a/plan-dist.html
+++ b/plan-dist.html
@@ -120,12 +120,5 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 </body>
 </html>
-
-
diff --git a/recherche-dist.html b/recherche-dist.html
index 13062f879b919d1a27fe8f6a6b09264266f0ba5f..3726213265fdced89e65b1a56e1d31b4aad4f0cd 100644
--- a/recherche-dist.html
+++ b/recherche-dist.html
@@ -84,11 +84,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 <!-- Une : articles trouves -->
 
 <div class="contenu" id="principal">
diff --git a/resume-dist.html b/resume-dist.html
index 7641e9ed9cd687dfb89cebecac2a867c574363f9..9b67e168bfa3049610f4b616a9f44f109003697e 100644
--- a/resume-dist.html
+++ b/resume-dist.html
@@ -67,11 +67,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 <!-- Une : articles les plus populaires -->
 
 <div id="principal" class="contenu">
diff --git a/rubrique-dist.html b/rubrique-dist.html
index e5e5f2898d023519b3fc73d00bb594061d080e14..56c71b6842d728f1d7c1fb1195e722747c815ead 100644
--- a/rubrique-dist.html
+++ b/rubrique-dist.html
@@ -98,11 +98,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 
 <!-- Une : contenu de la rubrique -->
 
diff --git a/site-dist.html b/site-dist.html
index 3e199ebbc381f307041f040a71f375075b58fc3f..0ff6e3c71714381c7acf4cf315d9ab72146510af 100644
--- a/site-dist.html
+++ b/site-dist.html
@@ -52,11 +52,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
-
 <!-- Une : affichage du site -->
 
 <div class="contenu" id="principal">
diff --git a/sommaire-dist.html b/sommaire-dist.html
index fe555818120e767c4e059f8c8ab5dd38fd9abb67..4c0b9bd4d2f5b30fb65ff0fb47072ef4b68d0a82 100644
--- a/sommaire-dist.html
+++ b/sommaire-dist.html
@@ -75,10 +75,6 @@
 
 </div>
 
-<!-- Formulaire administrateur -->
-
-#FORMULAIRE_ADMIN
-
 
 <div id="principal" class="contenu">
 
diff --git a/spip_admin.css b/spip_admin.css
index 529ebc477de44076e3d019a7d3fbff10582198e7..ac6b9c88e3c14ca7d729f3ab54d45651fb6461b5 100644
--- a/spip_admin.css
+++ b/spip_admin.css
@@ -1,20 +1,17 @@
-/*
- * Float ?
- */
+/* Les boutons d'admin survolent la page (sauf #FORMULAIRE_ADMIN) */
 .spip-admin-float {
 	top: 0px;
 	right: 20px;
-	position: absolute;
+	position: fixed;
+	z-index: 100;
 }
 
-/*
- * <ul><li>admin</li></ul>
- */
+
+/* Couleurs et design des boutons d'admin */
 .spip-admin-bloc {
 	font-family: Verdana,Arial,Helvetica,sans-serif;
 	background-color: transparent;
 	font-size: 10px;
-	z-index: 100;
 }
 
 .spip-admin-bloc li {
@@ -53,6 +50,7 @@ a:active.spip-admin-boutons {
 	border-bottom: 2px solid #f00;
 }
 
+
 /* Style pour le mode debug */
 #spip_debug {
 	background-color: #FFECD9;
@@ -81,4 +79,4 @@ a:active.spip-admin-boutons {
 
 #spip_debug ul ul a:hover {
 	text-decoration: underline;
-}
\ No newline at end of file
+}