any2* shouldn't emit empty 'class' attributes. CSSFlattener should handle empty 'class' attributes.

This commit is contained in:
Marshall T. Vandegrift 2009-01-25 17:15:27 -05:00
parent e7e69f18d8
commit a27ed258dc
2 changed files with 3 additions and 2 deletions

View File

@ -836,7 +836,7 @@ class Processor(Parser):
classname = 'calibre_class_%d'%class_counter
class_counter += 1
cache[setting] = classname
cn = elem.get('class', '')
cn = elem.get('class', classname)
elem.set('class', cn)
elem.attrib.pop('style')

View File

@ -207,7 +207,8 @@ class CSSFlattener(object):
items = cssdict.items()
items.sort()
css = u';\n'.join(u'%s: %s' % (key, val) for key, val in items)
klass = STRIPNUM.sub('', node.get('class', 'calibre').split()[0])
classes = node.get('class', None) or 'calibre'
klass = STRIPNUM.sub('', classes.split()[0])
if css in styles:
match = styles[css]
else: