Bootstrap 4
Are there any plans to make this project Bootstrap 4 compliant? I think the following changes would move this in the right direction:
- Migrate LESS to SCSS
- Leverage
$border-radiusand$enable-roundedvariables for.tour-step-backgroundCSS - Use
remin favor ofpx - Replace
btn-defaultwithbtn-secondary
- Leverage
- Ensure compatibility with Bootstrap 4 Popovers
- Replace
.popover('destroy')with.popover('dispose') - Replace
<div class='arrow'></div>with<div class='popover-arrow'></div>in popover template definition
- Replace
- AMD / CommonJS / Browserify Support (
var tour = require('boostrap-tour);)
I'm currently using BS4 and I've only been able to get tours to work when I include the standalone files - this results in some CSS conflicts and inconsistent popover placement and behavior.
If we could create a milestone to make this project compatible with Bootstrap 4 I would be happy to contribute to reaching those goals - I've working on a large project that would benefit tremendously from a consistent tour experience and at the moment there isn't an open-source alternative that's as well supported and maintained as bootstrap-tour.
Edits: elaborated on required changes for BS4 compatibility
@aeksco of course, we want to make this project Bootstrap 4 compliant.
Are these the only changes needed for compatibility?
It looks like rem question is not settled yet https://github.com/twbs/bootstrap/issues/19943.
@sorich87 As far as I can tell those are the only changes required for Bootstrap 4 compliance. I've got a feature branch working with the aforementioned changes - I'll have some time this afternoon to push to my remote. Once that's in place we can discuss how we want to manage these breaking changes - a bootstrap-4 branch would be a good place to isolate this development. I'll post an update once my changes are pushed.
Ok. Thanks!
I think we can make these changes backward compatible:
- Migration from LESS to SCSS / Leverage $border-radius and $enable-rounded variables for .tour-step-background CSS People currently importing the LESS file can simply import the future generated CSS file without making any change to their build process.
- Using rem in favor of px Let's wait for https://github.com/twbs/bootstrap/issues/19943 to be settled so that we don't have to revert later.
- Replacing
btn-defaultwithbtn-secondary,.popover('destroy')with.popover('dispose'),<div class='arrow'></div>with<div class='popover-arrow'></div>We can support both. E.g.<div class='arrow popover-arrow'></div>. - AMD / CommonJS / Browserify Support Done today https://github.com/sorich87/bootstrap-tour/commit/57ee74898b17754e1119c0dab75a1d1151e1dd2a
Happy to hear that you are working on Bootstrap 4 compatibility! I have also experienced issues related to modal/popover misplacement and inability to exit the tour. Will you push these changes to a new branch?
@sorich87 In the meantime you should point out the required Bootstrap version in the "dependencies" documentation.
"Compatible with Bootstrap >= 2.3.0" is wrong! It must be ">= 2.3.0 < 4"
Any update on this? I'd love to use this feature in bootstrap 4.
Bootstrap 4 beta was just released - so we're likely going to see fewer breaking changes that we did with the alpha releases. I'm going to continue my work on this issue - I'll post an update here as things take shape!
Found a change that is necessary for the tour to work properly Popovers are now using:
.popover-header instead of .popover-title
.popover-body instead of .popover-content
Should be updated in the template
The latest version in master should be compatible with Bootstrap, except for the orphan option.
Hey Ulrich, is there any progress on enabling orphan option?
Some work has happened here: https://github.com/sorich87/bootstrap-tour/pull/643
I think this is a CSS issue, I played around with it and in the end I extracted the orphan css into another file and overwrote it as follows:
.popover[class*="tour-"].orphan { left: 50% !important; top: 50% !important; margin-top: 0; position: absolute; transform: translate(-50%, -50%) !important; }
put this after the bootstrap-tour.css entry in your code. Should work.
Is Bootstrap 4 compatible or not?
I am having issues out of the box, nothing appears on screen, but when I enable backdrop:true I can see the element I chose in the first step, but nothing else, just a grey screen.
Same here! Please advise as to whether Bootstrap-Tour is compatible with Bootstrap 4+. Thank you!
Actually is Bootstrap-Tour compatible with Bootstrap 4.2.1? Thanks again!
Any progress here? I need to use it for my app but latest build files contain bootstrap css version v3.1.0 and popover version 3.3.7. My tour version is 0.12.0 and bootstrap version is 4.3.1.