18 Answers, 1 is accepted
The purpose of the Kendo UI Bootstrap theme is to style Kendo UI widgets with Bootstrap colors. From this point of view, I am not sure what do you mean by "Kendo UI Bootstrap theme does not work now at all", because the Kendo UI CSS is normally not related to any other markup or styling on the page. If the Bootstrap 3 stylesheet contains CSS rules with unwisely used CSS selectors, which break other unrelated content on the page, I am not sure we will be able to (or should) "fix" that. Let me know if I am missing something.
And to answer your main question, we will probably update the Kendo UI Bootstrap theme colors for a major Kendo UI release (Q3 2013, Q1 2014), after Bootstrap 3 becomes official.
Dimo
Telerik
===
Update: The Bootstrap 3 CSS contains the following rule:
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
I am completely unaware why this CSS rule exists, but I am also completely sure that it will break any website which includes Bootstrap 3. It should be removed.
===
The purpose of the Kendo UI Bootstrap theme is to style Kendo UI widgets with Bootstrap colors. From this point of view, I am not sure what do you mean by "Kendo UI Bootstrap theme does not work now at all", because the Kendo UI CSS is normally not related to any other markup or styling on the page. If the Bootstrap 3 stylesheet contains CSS rules with unwisely used CSS selectors, which break other unrelated content on the page, I am not sure we will be able to (or should) "fix" that. Let me know if I am missing something.
And to answer your main question, we will probably update the Kendo UI Bootstrap theme colors for a major Kendo UI release (Q3 2013, Q1 2014), after Bootstrap 3 becomes official.
Dimo
Telerik
I include bootstrap.css after kendo.xxx.css primarily in order to have ability to layout application including forms with Kendo widgets (apply bootstrap classes like "span4", "input-xxlarge" and so on). And you are right - that "box-sizing: border-box" breaks layouting of Kendo widgets.
So you can not offer any workaround at the moment?
Of course there is a workaround and it is pretty straightforward - override the above mentioned absurdity with another CSS rule, which targets Kendo UI widgets only.
.k-widget,
.k-widget *,
.k-animation-container *
{
-webkit-box-sizing: content-box;
-moz-box-sizing: content-box;
box-sizing: content-box;
}
Regards,
Dimo
Telerik
Thanks for quick response. And I'm sorry for stupid questions. I'm pretty much begining front-end developer and still not well-versed in css.
"Force border-box so that % widths fit the parent
container without overlap because of margin/padding."
http://quirksmode.org/css/user-interface/boxsizing.html
I justed downloaded the latest version as of this post and I am using their new common-bootstrap.css file that contains this rule and while I get the rule's intention.
It needs to be narrowed down in scope as it is causing a mixing of box-sizing models when using controls that have content placeholders.
Such controls like the splitter for example. The rule will apply context-box for all my content within a splitter because it is a widget but when working with bootstrap3 I want all my content to go border-box.
Please double check me here and maybe we can adjust the next internal build if your team agrees with me here.
I agree that the provided CSS selector is "too global", but so is the Bootstrap CSS rule, which applies a non-default box model to everything and breaks other third-party widgets. We would never use a universal selector (*) in normal scenarios.
I can suggest you to enforce border-box sizing back with
.k-splitter .k-pane *
{
/* ... */
}
or something like that.
Regards,
Dimo
Telerik
I applaud the integration efforts though as most vendors would not even care to try, do you know if there are any plans to make kendo border-box by default?
This might change in the future, but for the time being, changing the default box sizing used by Kendo UI is highly unlikely.
Regards,
Dimo
Telerik
We have already done that. The Kendo UI widgets have the required CSS rules. In addition I recommend checking the Using Kendo with Twitter Bootstrap help article.
Regards,
Atanas Korchev
Telerik
I think it would be a great idea if the content container widgets were designed in such a way as the control utilizes whatever box sizing kendo dictates (it is your suite and I know it can be difficult to switch) without affecting the nested html controls.
That way the kendo controls are agnostic to the outside markup structure.
>> "...it would be a great idea if the content container widgets were designed in such a way as the control utilizes whatever box sizing kendo without affecting the nested html controls"
This is true, however, it is impossible to achieve at this moment, as Twitter Bootstrap and similar libraries enforce non-default box sizing to everything (via the universal CSS selector *), so we are also forced to use the same selector to override box sizing for elements inside our widgets. We also can't guess how clients will nest our widgets.
Regards,
Dimo
Telerik
While I certainly agree that the reverse box model makes some aspects of front-end development easier, let us not forget several things:
+ Kendo UI and Bootstrap were introduced at the same time (August 2011). Back then, Bootstrap was not popular, while Kendo UI was a successor of a product that existed since 2009 and it used the default box model
+ not everyone is using Bootstrap or the reverse box model
+ switching from one box model to the other now or at any moment would be the biggest front-end related breaking change that we could possibly inflict
+ while Bootstrap may need reverse box sizing for its own DOM elements (i.e. CSS classes), it is unclear why would they need to enforce such a sizing unconditionally to all elements on the page via the universal selector (*), thus breaking all other third-party libraries, which do not rely on border box sizing
Nevertheless, it may be possible to achieve seamless integration between the two products if we introduce some non-breaking changes to our CSS code. We are currently investigating this opportunity.
Regards,
Dimo
Telerik
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.