diff --git a/src/data/Web_Alphabet-Horizontal.css b/src/data/Web_Alphabet-Horizontal.css
index 2c2080d51..93abf23c3 100644
--- a/src/data/Web_Alphabet-Horizontal.css
+++ b/src/data/Web_Alphabet-Horizontal.css
@@ -30,14 +30,7 @@ see .
--------------------------------------------------------------------------------------------------
# $Id: $
- NarrativeWeb
------------------------------------------------------------------------------------------------ */
-body#NarrativeWeb {
- padding: 158px 0px 0px 0px;
- margin: 0;
-}
-
-/* Header
+ Header
----------------------------------------------------- */
div#header {
position: fixed;
@@ -52,7 +45,6 @@ div#header {
--------------------------------------------------------------------------------------- */
body#NarrativeWeb div#navigation {
position: fixed;
- top: 104px;
left: 0px;
width: 100%;
}
diff --git a/src/data/Web_Alphabet-Vertical.css b/src/data/Web_Alphabet-Vertical.css
index afba497b8..db62d863f 100644
--- a/src/data/Web_Alphabet-Vertical.css
+++ b/src/data/Web_Alphabet-Vertical.css
@@ -30,15 +30,7 @@ see .
--------------------------------------------------------------------------------------------------
# $Id: $
- NarrativeWeb
------------------------------------------------------------------------------------------------- */
-body#NarrativeWeb {
- padding: 136px 0px 0px 54px;
- margin: 0;
- background-color: #FFF;
-}
-
-/* Header
+ Header
----------------------------------------------------- */
#header {
position: fixed;
@@ -48,21 +40,13 @@ body#NarrativeWeb {
width: 100%;
}
-/* NarrativeWeb Navigation
-------------------------------------------------------------------------------- */
-body#NarrativeWeb div#navigation {
- position: fixed;
- top: 104px;
- left: 0px;
-}
-
/* Alphabet Navigation
----------------------------------------------------- */
div#alphabet {
position: fixed;
left: 4px;
- width: 44px;
- height: 416px;
+ width: 40px;
+ height: 326px;
overflow-x: auto;
border-width: 2px 4px 2px 4px;
border-style: solid;
@@ -70,27 +54,28 @@ div#alphabet {
div#alphabet ul {
display: inline;
list-style: none;
+ padding: 0px 9px 0px 9px;
margin: 0;
}
div#alphabet ul li {
font: bold 14px/100% sans;
- padding: 10px 0px 10px 10px;
+ padding: 10px 10px 10px 0px;
margin:0;
float: left;
border-width: 0px 0px 2px 0px;
border-style: solid;
}
div#alphabet ul li:first-child {
- border: 0;
+ border-top: 0;
}
div#alphabet ul li:last-child {
- border: 0;
+ border-bottom: 0;
}
div#alphabet ul li a {
text-decoration: none;
+ display: block;
+ padding: 10px 0px 6px 10px;
}
div#alphabet ul li a:hover {
- display: block;
- padding: 6px 10px 6px 10px;
background-color: #C1B398;
}
diff --git a/src/data/Web_Visually.css b/src/data/Web_Visually.css
index 131a6865c..fc0375d16 100644
--- a/src/data/Web_Visually.css
+++ b/src/data/Web_Visually.css
@@ -52,15 +52,20 @@ Females Web_Gender_Female.png
NarrativeWeb Styles
-------------------------------------------------------------------------------------------- */
-body#NarrativeWeb {
+body {
font-family: Arial, sans, sans-serif, Helvetica;
color: #000;
background-color: #FFF;
}
+body#NarrativeWeb_Horizontal {
+ padding: 158px 0px 0px 0px;
+}
+body#NarrativeWeb_Vertical {
+ padding: 128px 0px 0px 44px;
+}
/* General Elements
----------------------------------------------------- */
-
div {
margin:0;
padding:0;
@@ -291,6 +296,16 @@ div#alphabet ul li a:hover {
div#navigation, div#subnavigation {
width: 100%;
}
+body#NarrativeWeb_Horizontal div#navigation {
+ position: fixed;
+ top: 104px;
+ left: 0px;
+}
+body#NarrativeWeb_Vertical div#navigation {
+ position: fixed;
+ top: 104px;
+ left: 4px;
+}
div#navigation ul, div#subnavigation ul {
list-style:none;
min-width:770px;
diff --git a/src/plugins/webreport/NarrativeWeb.py b/src/plugins/webreport/NarrativeWeb.py
index a467122e7..256912775 100644
--- a/src/plugins/webreport/NarrativeWeb.py
+++ b/src/plugins/webreport/NarrativeWeb.py
@@ -304,6 +304,7 @@ class BasePage(object):
# are still required.
self.html_dir = report.options['target']
self.ext = report.options['ext']
+ self.alpha_nav_bar = report.options['alpha_nav_bar']
self.noid = report.options['nogid']
self.linkhome = report.options['linkhome']
self.create_media = report.options['gallery']
@@ -948,7 +949,13 @@ class BasePage(object):
self.report.encoding, xmllang )
# add narrative specific body id
- body.attr = 'id="NarrativeWeb" '
+ # add alphabet layout direction to NarrativeWeb to allow for proper spacing for
+ # each individual stylesheet
+ alphabet_layout = "Horizontal"
+ if self.alpha_nav_bar == "Vertical":
+ alphabet_layout = "Vertical"
+
+ body.attr = 'id="NarrativeWeb_%s" ' % alphabet_layout
# create additional meta tags
meta = (Html("meta", attr = _META1) +
@@ -5793,6 +5800,12 @@ def alphabet_navigation(db, handle_list, key):
# remove the number of each occurance of each letter
sorted_alpha_index = sorted(sorted_set, key=locale.strxfrm)
+ # remove any commas from the letter set
+ sorted_alpha_index = [(ltr) for ltr in sorted_alpha_index if ltr != ',']
+
+ # remove any single spaces from the letter set also
+ sorted_alpha_index = [(ltr) for ltr in sorted_alpha_index if ltr != ' ']
+
# if no letters, return None back to its callers
if not sorted_alpha_index:
return None