def wrap_span(text: str, col: str=None, font: str=None, weight: str=None
    ) ->str:
    """
    This wraps a span element around an input text.

    :param weight: string, the weight of the element, numerical or  'ultralight', 'light', 'normal', 'bold',
        'ultrabold', 'heavy'
    :param font: string, the font to use for the span element
    :type text: string, the text that should be wrapped in the span
    :type col: string, a html color string
    """
    color_text = " color='%s'" % col if col else ''
    font_text = " font='%s'" % font if font else ''
    weight_text = " weight='%s'" % weight if weight else ''
    return '<span%s%s%s>%s</span>' % (font_text, color_text, weight_text, text)
