# tex4ht \Css code works using standard book class but has no effect using koma-script scrbook class

I am using a \Css configuration which centers a caption under a figure thanks to how-to-make-caption-be-centered-under-table-when-using-tex4ht

Now I find this does not work if I change document class to koma-script !

Here is a MWE

%\documentclass[11pt]{scrbook}
\documentclass[11pt]{book}

\usepackage{graphicx}
\usepackage{float}

\begin{document}

\begin{figure}[H]
\centering
\includegraphics[width=0.5\textwidth]{example-image-b}
\caption{test image}
\end{figure}

\end{document}


Now compiled using make4ht -c my.cfg where my.cfg is

\Preamble{xhtml}
\Css{div.caption{text-align:center;}}
\Css{div.figure img {text-align:center;display:block;margin-left:auto; margin-right: auto;}}
\begin{document}
\EndPreamble


Gives the expected output

Now changed the document to

\documentclass[11pt]{scrbook}


And making no other changes and compiling again using same command, gives

Why would changing the document class makes the CSS configuration have no effect?

TL 2018

If you compare the generate HTML files, you will find, that tex4ht adds a table to the caption in case of scrbook:

<div class="caption">
<table class="caption">
<tr style="vertical-align:baseline;" class="caption">
<td class="id">Figure&#x00A0;0.1: </td>
<td class="content">test image</td>
</tr>
</table>
</div>


(I've changed the line breaks and the indent to make it human readable).

With this code not only the text-align but also the table alignment is responsible for the alignment. So you need one more line of css code:

div.caption table{margin: auto;}


This additionally changes the margin of the table. So with

\Preamble{xhtml}
\Css{div.caption{text-align:center;}}
\Css{div.figure img {text-align:center;display:block;margin-left:auto; margin-right: auto;}}
\Css{div.caption table{margin: auto;}}
\begin{document}
\EndPreamble


You'd get what you want.

• How do you know that? I don't even have any idea how to find out that! Feb 11 '19 at 12:46
• @KeksDose As I wrote: 1st, I've compared the HTML files of using book and of using scrbook. Then, I've made the difference of the scrbook result better human readable. Then, I've had a look into the generated css file to see, whether or not there are already style definitions for table of class caption (in css syntax: div.caption table) or for table rows. Then, I've had a look into the css guide to see, how to reduce the table to its natural width or to change its alignment. That's it. No magic. Only reading code and manuals (and spending some time). Feb 12 '19 at 6:36