matestack / matestack-ui-bootstrap

As an extension for Matestack Ui Core, Matestack Ui Bootstrap ships all you need to build beautiful, reactive UIs in pure Ruby and smart CRUD components based on Bootstrap v5. Don't think about styling anymore and just create admin or application UIs faster than ever before!
https://docs.matestack.io/matestack-ui-bootstrap
MIT License
11 stars 4 forks source link

`bs_btn` with `link` creates `type=button` anchor tag #22

Open fiedl opened 2 years ago

fiedl commented 2 years ago

Context

This concerns the button component: https://github.com/matestack/matestack-ui-bootstrap/blob/main/lib/matestack/ui/bootstrap/components/button.rb

Scenario

Specifying a link for a bs_btn:

bs_btn "wählen", link: { path: dashboard_path }

Observed behaviour

A <a type="button" class="btn btn-primary"> tag is generated, which is not styled as expected by bootstrap.

Bildschirmfoto 2021-11-22 um 00 00 26

Expected behaviour

To be styled correctly by bootstrap, the tag should be:

Bildschirmfoto 2021-11-22 um 00 03 34

Workaround

Overwrite the type attribute:

bs_btn "wählen", type: "", link: { path: dashboard_path }

Browsers

I have observed this in Safari. It looks correct, however, in Chrome.

aaron-contreras commented 1 year ago

Hey @fiedl , I see this has been open for a while. I've actually experienced this exact behavior while working on a client project and didn't realize there was an open issue for it here. I'll work on a fix for it. Thanks for documenting the root cause, that helps a lot and makes it quite cookie-cutter for me :)