From 9e0e846f257e76c74bf8a5bc60a3b615844d7a96 Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 12 Feb 2020 08:04:33 +0530 Subject: [PATCH] Conversion pipeline: Fix styles applied via selectors to the element being ignored Fixes #1862401 [Class applied to html element is lost during conversion](https://bugs.launchpad.net/calibre/+bug/1862401) --- src/calibre/ebooks/oeb/transforms/flatcss.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/calibre/ebooks/oeb/transforms/flatcss.py b/src/calibre/ebooks/oeb/transforms/flatcss.py index 3c12a28080..f617a752f2 100644 --- a/src/calibre/ebooks/oeb/transforms/flatcss.py +++ b/src/calibre/ebooks/oeb/transforms/flatcss.py @@ -660,9 +660,8 @@ class CSSFlattener(object): stylizer = self.stylizers[item] if self.specializer is not None: self.specializer(item, stylizer) - body = html.find(XHTML('body')) fsize = self.context.dest.fbase - self.flatten_node(body, stylizer, names, styles, pseudo_styles, fsize, item.id) + self.flatten_node(html, stylizer, names, styles, pseudo_styles, fsize, item.id) items = sorted(((key, val) for (val, key) in iteritems(styles)), key=lambda x:numeric_sort_key(x[0])) # :hover must come after link and :active must come after :hover psels = sorted(pseudo_styles, key=lambda x :