I would like to preface this by saying that I've looked through answers to slightly similar questions but couldn't quite find what I was looking for.
My main job is a data developer however I have a lot of experience with web development. As such, when I was currently building my new shiny app I decided to create my own CSS and JS files so I could add the functionality myself, since I have tons of experience in this area vs little experience with Shiny (plenty with R just not with Shiny itself). I created and imported my CSS file using importCSS() however I'm getting an issue with styling things like the body and button's.
It's seems that Shiny uses bootstrap and as a result I'm getting a bunch of default bootstrap stylesheets added after my stylesheet in the DOM. This is resulting in my button styles and my body styles being overwritten by the default bootstrap style. I know that I can technically solve this by just using ID's to style and/or the !important tag, however I would consider this bad practise as generally I prefer styles to be done on classes, and using !important everywhere in a CSS file is a big no-no.
My ultimate question is; is there a way for me to directly place my CSS at the bottom of the head in R Shiny? Correct ordering of CSS files in the head is how I would normally have proper styling, however it doesn't seem like I can specify where my CSS file is linked using importCSS() or tag$link syntax. Is there a way to do this, or is my only real solution to just grit my teeth and use ID/!important styling?
Thanks for any help.
