mirror of
https://github.com/jquery/jquery.git
synced 2026-04-20 03:01:22 -04:00
Effects: Respect display value on inline elements
Take "olddisplay" value into the account Fixes #14824 Closes gh-1566 Ref73fe17299a(cherry-picked fromc34dbf5a8d) Conflicts: src/effects.js
This commit is contained in:
9
src/effects.js
vendored
9
src/effects.js
vendored
@@ -116,7 +116,7 @@ function createTween( value, prop, animation ) {
|
||||
|
||||
function defaultPrefilter( elem, props, opts ) {
|
||||
/* jshint validthis: true */
|
||||
var prop, value, toggle, tween, hooks, oldfire, display,
|
||||
var prop, value, toggle, tween, hooks, oldfire, display, checkDisplay,
|
||||
anim = this,
|
||||
orig = {},
|
||||
style = elem.style,
|
||||
@@ -160,9 +160,12 @@ function defaultPrefilter( elem, props, opts ) {
|
||||
// Set display property to inline-block for height/width
|
||||
// animations on inline elements that are having width/height animated
|
||||
display = jQuery.css( elem, "display" );
|
||||
|
||||
// Test default display if display is currently "none"
|
||||
if ( (display === "none" ? defaultDisplay( elem.nodeName ) : display) === "inline" &&
|
||||
jQuery.css( elem, "float" ) === "none" ) {
|
||||
checkDisplay = display === "none" ?
|
||||
jQuery._data( elem, "olddisplay" ) || defaultDisplay( elem.nodeName ) : display;
|
||||
|
||||
if ( checkDisplay === "inline" && jQuery.css( elem, "float" ) === "none" ) {
|
||||
|
||||
// inline-level elements accept inline-block;
|
||||
// block-level elements need to be inline with layout
|
||||
|
||||
Reference in New Issue
Block a user