diff --git a/src/calibre/ebooks/mobi/mobiml.py b/src/calibre/ebooks/mobi/mobiml.py index 0910d10cfb..56930ad2a9 100644 --- a/src/calibre/ebooks/mobi/mobiml.py +++ b/src/calibre/ebooks/mobi/mobiml.py @@ -275,7 +275,15 @@ class MobiMLizer(object): # does not exist lalalala if style['display'] in ('none', 'oeb-page-head', 'oeb-page-foot') \ or style['visibility'] == 'hidden': - return + id_ = elem.get('id', None) + if id_: + # Keep anchors so people can use display:none + # to generate hidden TOCs + elem.clear() + elem.text = None + elem.set('id', id_) + else: + return tag = barename(elem.tag) istate = copy.copy(istates[-1]) istate.rendered = False