Create ANCHOR Tag

@param string $href
@param string $text
@param array  $attributes

@return Tag
512847
public static function link($href = '', $text = '', array $attributes = [])
    {
        $attributes = array_merge([
            'href'  => $href,
        ], $attributes);

        return self::tag('a', $attributes)->text($text);
    }
789142
public function tag($tag, $content, array $attributes = [])
    {
        return $this->htmlBuilder->tag($tag, $content, $attributes);
    }
225303
public function createLegend($text, array $attributes = [])
    {
        $node = new Fieldset\Legend($attributes);
        $node->entity->setEntityName('legend');
        $node->attributes->addAttribute('for', dash($text));

        $node->textContent->push($text);

        $this->childNodes->prepend($node);

        return $this->legend = $this->childNodes->first();
    }
1319244
public function linkTo($text, $urlOptions, array $attrs = [])
    {
        $url = $this->parseUrlOptions($urlOptions);
        return $this->contentTag('a', $text, array_merge(['href' => $url], $attrs));
    }
125141
public static function link(
        string $content = null, 
        array $attributes = []
    ) : string
    {
        return self::tag("link", $content, $attributes);
    }
1333371
public function createTextarea(array $attributes = [])
    {
        $this->childNodes->push(new Form\Elements\Textarea($attributes));

        return $this->childNodes->last();
    }
459849
public function link($url, $title = null, $attributes = [], $secure = null, $escape = true)
    {
        $url = $this->url->to($url, [], $secure);

        if (is_null($title) || $title === false) {
            $title = $url;
        }

        if ($escape) {
            $title = $this->entities($title);
        }

        return $this->toHtmlString('<a href="' . $this->entities($url) . '"' . $this->attributes($attributes) . '>' . $title . '</a>');
    }
265329
public static function tag($tag, $attr = [], $html = '')
    {
        // Build attributes
        $attributes = [];
        foreach ($attr as $name => $value) {
            $attributes[] = $name.'="'.$value.'"';
        }

        if (in_array($tag, self::$voidElements)) {
            return '<'.$tag.(!empty($attributes) ? ' '.implode(' ', $attributes) : '').'>';
        } else {
            return '<'.$tag.(!empty($attributes) ? ' '.implode(' ', $attributes) : '').'>'.$html.'</'.$tag.'>';
        }
    }
1274925
public static function icon($icon, $link, array $attributes = array())
    {
        // Inner text
        $text = sprintf('<i class="%s"></i> ', $icon);

        return self::link($text, $link, $attributes);
    }
1200734
public static function tag( $name, $attributes = array(), $value = null, $close = true, $selfClose = false )
    {
        //	Nah nah...
        if ( true !== $close )
        {
            $close = $selfClose = false;
        }

        $_html = static::openTag( $name, $attributes, $selfClose );

        if ( false !== $selfClose )
        {
            return $_html;
        }

        if ( null !== $value )
        {
            $_html .= trim( $value );
        }

        if ( $close )
        {
            $_html .= static::closeTag( $name );
        }

        return trim( $_html );
    }
303041
public static function label($input, $text, array $attributes = null)
    {
        // Set the label target
        $attributes['for'] = $input;

        return '<label'.Html::attributes($attributes).'>'.$text.'</label>';
    }
553139
public static function submit($text, $attributes = array())
    {
        if (isset($attributes['name'])) {
            $name = $attributes['name'];
            unset($attributes['name']);
        } else {
            $name = 'submit';
        }

        return self::input('submit', $name, array_merge(array('value' => $text), $attributes));
    }
1252938
public static function a( $text, $url = NULL, $options = [] ) {
		if ( ! is_null( $url ) ) {
			$options['href'] = $url;
		}
		
		return static::tag('a', $text, $options );
	}
396564
public static function style($href = '', array $attributes = [])
    {
        $attributes = array_merge([
            'rel'   => 'stylesheet',
            'href'  => $href,
            'type'  => 'text/css'
        ], $attributes);

        return self::tag('link', $attributes);
    }
821796
public static function openTag( $tag, $attributes = array(), $selfClose = false )
    {
        if ( is_array( $attributes ) )
        {
            $attributes = Convert::kvpToString( $attributes, static::$_uppercaseTags );
        }

        return str_replace(
            static::ValuePlaceholder,
            static::_cleanTag( $tag ) . ' ' . $attributes,
            static::_tagPattern( true, $selfClose )
        );
    }
856955
public static function link($name, $url, array $attributes = [])
    {
        return static::openTag('link', array_merge($attributes, ['href' => $url])).
            $name.
            static::closeTag('link');
    }
2925
public function addElement($tag, array $attributes = [])
    {
        if ($tag instanceof self) {
            $htmlTag      = $tag;
            $htmlTag->top = $this->top;
            $htmlTag->attrs($attributes);
            $this->elements->add($htmlTag);

            return $htmlTag;
        }

        return self::make(
            $tag,
            $attributes,
            $this->hasParent() ? $this->parent : $this
        );
    }