diff --git a/medias_fonctions.php b/medias_fonctions.php
index 77e56f6712e34a1d42092105d6934501fbe53890..62375490f61feeddbd851109f5fbed4d578084c0 100644
--- a/medias_fonctions.php
+++ b/medias_fonctions.php
@@ -435,12 +435,15 @@ function filtre_medias_modele_document_standard_classes_dist($Pile, $id_document
 
 	$classes = [];
 	$classes[] = "spip_document_$id_document";
+	$classes[] = 'spip_document';
 	$classes[] = 'spip_documents';
 	$classes[] = "spip_document_$media";
 	if (!empty($env['align'])) {
 		$classes[] = 'spip_documents_' . $env['align'];
+		$classes[] = 'spip_document_' . $env['align'];
 	} elseif ($media === 'image') {
 		$classes[] = 'spip_documents_center';
+		$classes[] = 'spip_document_center';
 	}
 	if (!empty($var['legende'])) {
 		$classes[] = "spip_document_avec_legende";
diff --git a/modeles/audio.html b/modeles/audio.html
index 5d47a565a1bd5db0b1ecfc4a0268a5820f0877a6..13483ace5e2ad51758dff67e20ff9ad331117ff8 100644
--- a/modeles/audio.html
+++ b/modeles/audio.html
@@ -7,11 +7,11 @@
 [(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})]
 #SET{largeur,#ENV{largeur, #LARGEUR|?{#LARGEUR,400}}|max{120}}
 #SET{duree,#ENV{duree,#DUREE}}[(#SET{duree,[(#GET{duree}|intval|?{[(#GET{duree}|intval)],''})]})]
-<figure 
-  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{audio})]"[ 
-  style='width:(#GET{largeur})px;'][
+<div
+  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{audio})]"[
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{audio})
 ]>
+<figure class="spip_doc_inner">
 	[(#LOGO_DOCUMENT{vignette}|image_reduire{#GET{largeur},0}|vider_attribut{class})]
   <div class="audio-wrapper"[ style='width:(#GET{largeur})px;max-width:100%;']>
   	<audio class="mejs mejs-#ID_DOCUMENT [ mejs-(#ENV{skin})]"
@@ -28,6 +28,7 @@
 (#INCLURE{javascript/mejs-init.min.js})/*\]\]>*/</script>]
 [(#ENV{skin}|oui)[<style>(#INCLURE{#CHEMIN{css/mejs-skin-#ENV{skin}.css}|sinon{#CHEMIN{lib/mejs/mejs-skins.css}}|url_absolue_css})</style>]]
 </figure>
+</div>
 </BOUCLE_audio>
 <INCLURE{fond=modeles/file,env} />
 <//B_audio>
diff --git a/modeles/file.html b/modeles/file.html
index de2fb7f43e47b0bf87bfa1f3eb85a31e8f8484e0..aca8b276c0a4e20c8008b795eaf4825191bd1b4f 100644
--- a/modeles/file.html
+++ b/modeles/file.html
@@ -25,15 +25,16 @@
 [(#SET{title,[(#TYPE_DOCUMENT) - [(#TAILLE|taille_en_octets)]]})]
 [(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})]
 [(#MEDIA|=={image}|oui) #SET{title,#TITRE|sinon{#GET{title}}]
-<figure 
-  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{file}) ]spip_lien_ok"[ 
-  style='width:(#GET{width}|max{120})px;'][ 
+<div
+  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{file}) ]spip_lien_ok"[
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{file})
 ]>
+<figure class="spip_doc_inner">
 [<a href="(#GET{url})"[
-	class="(#ENV{lien_class})"] title='[(#GET{title}|attribut_html)]'[
+	class="(#ENV{lien_class}|concat{' spip_doc_lien'})"] title='[(#GET{title}|attribut_html)]'[
 	(#ENV{lien}|?{'',type="#MIME_TYPE"})]>]<img src='#GET{fichier}' width='#GET{width}' height='#GET{height}' alt='' />[(#GET{url}|?{</a>})]
 #GET{legende}
 </figure>
+</div>
 </BOUCLE_file>
 #FILTRE{trim}
\ No newline at end of file
diff --git a/modeles/file_emb_application.html b/modeles/file_emb_application.html
index d0d4528fb21d28c3917a209969ccb0d646127638..54f96894b3e1257c2c003ffc7dab7b0fd301c514 100644
--- a/modeles/file_emb_application.html
+++ b/modeles/file_emb_application.html
@@ -12,10 +12,11 @@
  (#ENV{controls}=={PositionSlider}|?{#SET{largeur,#GET{largeur}|moins{40}},''})
 ][(#ENV{controls,''}|non)
 [(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})]
-<figure 
+<div
   class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{application})]"[
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{application})
 ]>
+<figure class="spip_doc_inner">
 ][(#EXTENSION|=={swf}|oui)
 <object classid='clsid:d27cdb6e-ae6d-11cf-96b8-444553540000' 
  codebase='http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=#ENV{version,'6,0,0,0'}' 
@@ -41,6 +42,7 @@
 ][(#ENV{controls,''}|non)
 	#GET{legende}
 </figure>
+</div>
 ]
 </BOUCLE_application>
 <INCLURE{fond=modeles/file,env} />
diff --git a/modeles/file_emb_text.html b/modeles/file_emb_text.html
index 7f603e9ec124a37c3469993e8df0cb72234ec256..20b9f9c49d8b917c4b632017e879e538019bde09 100644
--- a/modeles/file_emb_text.html
+++ b/modeles/file_emb_text.html
@@ -1,9 +1,9 @@
 <BOUCLE_text (DOCUMENTS types_documents) {id_document=#ENV{id,#ENV{id_document}}} {tout}
 >[(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})][(#REM)
-][<figure 
+][<div
   class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{text})]"[ 
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{text})
-]><pre>(#FICHIER|contenu_document{#ENV{charset,auto}}|echapper_tags)</pre>
+]><figure class="spip_doc_inner"><pre>(#FICHIER|contenu_document{#ENV{charset,auto}}|echapper_tags)</pre>
 [(#GET{legende})
-]</figure>
+]</figure></div>
 ]</BOUCLE_text>
diff --git a/modeles/file_emb_text_csv.html b/modeles/file_emb_text_csv.html
index e15694fdf1d428941a354e2cf31f318b0ff09a1f..b861b77273cc1d790323c9c52da6959349f06b2f 100644
--- a/modeles/file_emb_text_csv.html
+++ b/modeles/file_emb_text_csv.html
@@ -1,10 +1,10 @@
 <BOUCLE_tous (DOCUMENTS types_documents) {id_document=#ID} {tout}
 >[(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})][(#REM)
-]<figure 
+]<div
   class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{text})]"[ 
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{text})
-]>
+]><figure class="spip_doc_inner">
 [(#FICHIER|contenu_document{#ENV{charset,auto}}|appliquer_filtre{#MIME_TYPE})]
 [(#GET{legende}
-]</figure>
+]</figure></div>
 </BOUCLE_tous>
diff --git a/modeles/file_emb_text_html.html b/modeles/file_emb_text_html.html
index 34eba39bff4caa8f25a66991b6caa038de469f5a..9633ed945125fe9c83047fbd08e7dd8a07f253a7 100644
--- a/modeles/file_emb_text_html.html
+++ b/modeles/file_emb_text_html.html
@@ -1,9 +1,9 @@
 <BOUCLE_texthtml (DOCUMENTS types_documents) {id_document=#ID} {tout}
 >[(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})][(#REM)
-][<figure 
+][<div
   class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{text_html})]"[ 
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{text_html})
-]><object data="(#URL_DOCUMENT)" width="100%" height="400"><a href="#URL_DOCUMENT">#FICHIER</a></object>
+]><figure class="spip_doc_inner"><object data="(#URL_DOCUMENT)" width="100%" height="400"><a href="#URL_DOCUMENT">#FICHIER</a></object>
 [(#GET{legende})
-]</figure>
+]</figure></div>
 ]</BOUCLE_texthtml>
diff --git a/modeles/image.html b/modeles/image.html
index 29a89d7e70e1eff761772c3c0f688c8eaa28a0c5..022a1cb682a197148fedfd1fc23a6cbee5ac36eb 100644
--- a/modeles/image.html
+++ b/modeles/image.html
@@ -11,17 +11,18 @@
 [(#SET{image,#GET{image}|inserer_attribut{alt,#ENV{alt,#ALT}|sinon{''}}})]
 [(#SET{legende,#INCLURE{fond=modeles/document_legende, env}|trim})]
 #SET{largeur,#GET{image}|largeur}
-<figure 
-  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{image}) ]spip_lien_ok"[ 
-  style='width:(#GET{largeur})px;'][
+<div
+  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{image}) ]spip_lien_ok"[
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{image})
 ]>
-[<a href="(#ENV{lien})"[ class="(#ENV{lien_class}|concat{#GET{autolien}|?{' mediabox'}})"]>]
-[(#ENV{lien}|non|et{#GET{autolien}})<a href="#URL_DOCUMENT" class="mediabox" type="#MIME_TYPE">]
+<figure class="spip_doc_inner">
+[<a href="(#ENV{lien})"[ class="(#ENV{lien_class}|concat{' spip_doc_lien',#GET{autolien}|?{' mediabox'}})"]>]
+[(#ENV{lien}|non|et{#GET{autolien}})<a href="#URL_DOCUMENT" class="spip_doc_lien mediabox" type="#MIME_TYPE">]
 		#GET{image}
 [(#ENV{lien}|ou{#GET{autolien}}|?{</a>})]
 #GET{legende}
 </figure>
+</div>
 </BOUCLE_image>
 <INCLURE{fond=modeles/file,env} />
 <//B_image>
diff --git a/modeles/video.html b/modeles/video.html
index 5fb1a70dd9983bc34e7fa5cb4d50bdefcfdedfa2..983698a82ea6d1cac2e4f430f0a65556df57f43a 100644
--- a/modeles/video.html
+++ b/modeles/video.html
@@ -9,11 +9,11 @@
 #SET{largeur,#ENV{largeur, #LARGEUR|?{#LARGEUR,480}}|max{120}}
 #SET{hauteur,#ENV{hauteur, #HAUTEUR|?{#HAUTEUR,300}}|max{75}}
 #SET{duree,#ENV{duree,#DUREE}}[(#SET{duree,[(#GET{duree}|intval|?{[(#GET{duree}|intval)],''})]})]
-<figure 
-  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{video})]"[ 
-  style='width:(#GET{largeur})px;'][ 
+<div
+  class="[(#ID_DOCUMENT|medias_modele_document_standard_classes{video})]"[
   (#ID_DOCUMENT|medias_modele_document_standard_attributs{video})
 ]>
+<figure class="spip_doc_inner">
 <div class="video-intrinsic-wrapper" style='height:0;width:#GET{largeur}px;max-width:100%;padding-bottom:[(#GET{hauteur}|div{#GET{largeur}}|mult{100}|round{2})]%;position:relative;'>
 	<div class="video-wrapper" style="position: absolute;top:0;left:0;width:100%;height:100%;">
 		<video class="mejs mejs-#ID_DOCUMENT[ mejs-(#ENV{skin})]"
@@ -48,6 +48,7 @@
 (#INCLURE{javascript/mejs-init.min.js})/*\]\]>*/</script>]
 [(#ENV{skin}|oui)[<style>(#INCLURE{#CHEMIN{css/mejs-skin-#ENV{skin}.css}|url_absolue_css})</style>]]
 </figure>
+</div>
 </BOUCLE_video>
 <INCLURE{fond=modeles/file,env} />
 <//B_video>