diff --git a/assets/stylesheets/pages/_sphinx.scss b/assets/stylesheets/pages/_sphinx.scss
index 913fdb2e..d0b64a53 100644
--- a/assets/stylesheets/pages/_sphinx.scss
+++ b/assets/stylesheets/pages/_sphinx.scss
@@ -25,7 +25,7 @@
 
   ul.simple { margin: 1em 0; }
 
-  dt > a.external { float: right; }
+  h2 > a, h3 > a, dt > a { float: right; }
 }
 
 ._sphinx {
diff --git a/lib/docs/filters/django/clean_html.rb b/lib/docs/filters/django/clean_html.rb
index b036009d..0e50c7aa 100644
--- a/lib/docs/filters/django/clean_html.rb
+++ b/lib/docs/filters/django/clean_html.rb
@@ -22,13 +22,15 @@ module Docs
         end
 
         css('h1', 'h2', 'h3', 'dt').each do |node|
+          links = node.css('a').remove
           node.content = node.content
+          node << links
         end
 
         css('div[class^="highlight-"]').each do |node|
           node.name = 'pre'
           node['class'] = node['data-language'] = case node['class']
-            when 'highlight-python' then 'python'
+            when 'highlight-python', 'highlight-default' then 'python'
             when 'highlight-html+django' then 'markup'
             else ''
           end
diff --git a/lib/docs/filters/django/fix_urls.rb b/lib/docs/filters/django/fix_urls.rb
index b3dc1453..53c38005 100644
--- a/lib/docs/filters/django/fix_urls.rb
+++ b/lib/docs/filters/django/fix_urls.rb
@@ -2,7 +2,7 @@ module Docs
   class Django
     class FixUrlsFilter < Filter
       def call
-        html.gsub! %r{#{Regexp.escape(Django.base_url)}([^"']+?)\.html}, "#{Django.base_url}\\1/"
+        html.gsub! %r{#{Regexp.escape(context[:base_url].to_s)}([^"']+?)\.html}, "#{context[:base_url]}\\1/"
         html
       end
     end