Bug Tracker

Opened 9 years ago

Closed 9 years ago

Last modified 8 years ago

#7799 closed bug (invalid)

width function different in IE now

Reported by: philipp.heinze@… Owned by: philipp.heinze@…
Priority: high Milestone:
Component: css Version: 1.4.3
Keywords: Cc:
Blocked by: Blocking:

Description

The latest implementations of width() and height() seem to be different than in 1.4.2, at least for IE 7-8 (untested for IE 6). All other browser seem correct.

An example case can be found here: http://jsfiddle.net/ueeys/2/

Sorry the example isn't that minimalistic, but if I'm not wrong the important parts should be the function applySize and the code at the end of the listing which sets up the scrollbar. The Bar is correctly in one line when 1.4.2 is used, since 1.4.3 it's wrapped for IE only.

Change History (6)

comment:1 Changed 9 years ago by addyosmani

Owner: set to philipp.heinze@…
Priority: undecidedlow
Status: newpending

Thanks for submitting a ticket to the jQuery Bug Tracker!. We appreciate you taking the time to post a test case on jsFiddle as well.

I've had a look at your code and although you mention upfront that it isn't minimalistic, we will have to ask that you try reducing the code down to an example that reproduces the issue mentioned in IE7/8 without all of the component/app code included.

The reason for this is that due to the amount of code posted, it would otherwise take the triage team much longer to figure out if the issue is definitely due to the issue mentioned or is instead a side-effect of some other aspect of the code.

We will be more than happy to assist once a minimal test case is provided.

comment:2 Changed 9 years ago by philipp.heinze@…

Status: pendingnew

Ok here's the minimalistic version http://jsfiddle.net/ueeys/4/

comment:3 Changed 9 years ago by jitter

Component: unfiledcss
Milestone: 1.next1.4.5
Priority: lowhigh
Status: newopen

Although your new test case is far from minimalistic I think I could make out the culprit. You use .css("cssFloat", ...) several times, can you try changing these lines to cssFloat("float", ...) and check if that fixes the problem.

It looks like a regression was introduced with 1.4.3 and the exact use case described in the .css() documentation is no longer working

For example, Internet Explorer's DOM implementation refers to the float property as styleFloat, while W3C standards-compliant browsers refer to it as cssFloat. The .css() method accounts for such differences, producing the same result no matter which term we use

This is no longer true since jQuery 1.4.3. test case. With jQuery 1.4.2 you would get three times "right" as output in every browser. Since 1.4.3 you get 1 or 2 "empty strings" as response depending on what browser you use.

Looks like this commit introduced the problem (the rfloat check was removed commit)

comment:4 Changed 9 years ago by philipp.heinze@…

Yes that does the trick. After switching to float instead of cssFloat it's working as well in IE. Thanks for your help.

comment:5 Changed 9 years ago by dmethvin

Milestone: 1.4.51.5

comment:6 Changed 9 years ago by john

Resolution: invalid
Status: openclosed
Note: See TracTickets for help on using tickets.