docs: def create_element(tag: str, name: str = None, base: type = None,
                     attr: dict = None) -> Node:
      """Create element with a tag of ``name``.
  
      :arg str name: html tag.
      :arg type base: Base class of the created element
                         (defatlt: ``WdomElement``)
      :arg dict attr: Attributes (key-value pairs dict) of the new element.
      """
      from wdom.web_node import WdomElement
      from wdom.tag import Tag
      from wdom.window import customElements
      if attr is None:
          attr = {}
      if name:
          base_class = customElements.get((name, tag))
      else:
          base_class = customElements.get((tag, None))
      if base_class is None:
          attr['_registered'] = False
          base_class = base or WdomElement
      if issubclass(base_class, Tag):
          return base_class(**attr)
      return base_class(tag, **attr)