diff --git a/modules/basic-page-elements.xml b/modules/basic-page-elements.xml
index ad571e4..51385df 100644
--- a/modules/basic-page-elements.xml
+++ b/modules/basic-page-elements.xml
@@ -45,7 +45,14 @@
 				<xsl:text>\noindent </xsl:text>
 			</xsl:if>
 			<xsl:if test="@border = ('yes', 'y')">
-				<xsl:text>\fbox{\parbox[t]{\textwidth}{</xsl:text>
+			    <!-- Adjust box to fit relevant text margins. -->
+			    <xsl:text>\hspace*{-\fboxsep}</xsl:text>
+                <xsl:text>\setlength{\parwidth}{\textwidth}</xsl:text>
+			    <xsl:if test="ancestor::item">
+                    <xsl:text>\addtolength{\parwidth}{-\leftmargin}</xsl:text>
+                    <xsl:text>\addtolength{\parwidth}{-\rightmargin}</xsl:text>
+                </xsl:if>
+				<xsl:text>\fbox{\parbox[t]{\parwidth}{</xsl:text>
 			</xsl:if>
 			<xsl:apply-templates />
 			<xsl:if test="@border = ('yes', 'y')">