Please create an account to participate in the Slashdot moderation system


Forgot your password?

Details On IE7 CSS Changes 203

writes "IE development team has released a list of CSS changes for IE7. Some of the notable new features are enabling :hover for all elements, and implementing position:fixed, and PNG transparency support. In addition, there is a long list of fixed bugs that plagued previous IE browsers for years. These changes (except for PNG transparency) only work under the <!DOCTYPE> switch to preserve compatibility with previous versions of IE."
This discussion has been archived. No new comments can be posted.

Details On IE7 CSS Changes

Comments Filter:
  • Old News (Score:5, Informative)

    by thinsoldier ( 937530 ) on Monday October 23, 2006 @11:24AM (#16546912) Homepage
    that IE blog post is from August.
    Old News.
  • PNG Support (Score:2, Insightful)

    by Neovanglist ( 566939 )
    It's about damn time. No more having to use crappy file formats to make sure that your websites have to work with IE anymore.

    At least, to some extent.
    • by Channard ( 693317 ) on Monday October 23, 2006 @11:29AM (#16546986) Journal
      .. which is certain websites requiring IE to work.
      • Re: (Score:3, Insightful)

        by Phroggy ( 441 ) *
        .. which is certain websites requiring IE to work.

        Fortunately, some of these sites require IE6 to work, and their browser compatibility tests will fail on IE7. This will motivate some people to fix the problem.

        (It will motivate other people to just upgrade their compatibility tests, but Firefox is big enough now that they might as well deal with it...)
    • Re:PNG Support (Score:5, Insightful)

      by masklinn ( 823351 ) < .at.> on Monday October 23, 2006 @11:44AM (#16547152)
      You'll still have to cater for IE6 or a loong time, especially since IE7 can't be installed on Windows 2000 or Windows XP SP1...
      • You'll still have to cater for IE6 or a loong time, especially since IE7 can't be installed on Windows 2000
        Good thing FireFox 2.0 is coming out soon...

        I poked around Google & apparently IE7 needs OS functionality that is only in XP SP2, Vista & 2k3
        • Re: (Score:2, Funny)

          by Supergibbs ( 786716 )
          at least that is what MS says..... yeah for forced OS updating!
          • Re:PNG Support (Score:5, Interesting)

            by Evan Meakyl ( 762695 ) on Monday October 23, 2006 @12:08PM (#16547512)
            Tried to hack the installer (update.inf file, to be correct) in order to install it on Win2k. The process starts, but ends saying that the cryptographic services isn't running... Does someone has an idea to bypass this?
            • by bcat24 ( 914105 )
              I'm not sure, but maybe it really isn't compatible with W2K. There are new services in every OS iteration, right? If so, I can understand why Microsoft would only want to support the newest platforms.
            • Re:PNG Support (Score:5, Informative)

              by Anonymous Coward on Monday October 23, 2006 @01:24PM (#16548678)
              It involves starting the setup procedure, and then replacing the hacked inf with the original before the cryptographic service (yes, it has to be in manual or automatic) can verify it. This is easier to do with a slow computer, of course (you may need to write a batch file if you run a modern processor). At least, this works to install WMP11 under Server 2003. What'll happen with IE7 under W2K is very much a mystery, though I'd be surprised if your explorer shell still worked after completing setup.

              I'd try this in a VM first, if I were you.
              • Re:PNG Support (Score:4, Informative)

                by Evan Meakyl ( 762695 ) on Monday October 23, 2006 @03:53PM (#16550786)
                Too late ^^ However, your trick has worked. IE7 has installed itself on the system, asked me to reboot;
                I did it, but then things started to go wrong.

                It had a problem with IEDKCS32.DLL during the post reboot install. Now, explorer.exe crashes in shlwapi.dll, and more mysteriously, when I run iexplore.exe, a message box appears and tell me that iexplore.exe is not a valid win32 application...

                So I sum up: no more IE (don't care, use seamonkey), but no more desktop also (for now?)... which is more embarassing!
            • what about running IE7 with WINE on linux? if you get that working, thier is probably already those who got cygwin running X, and WINE on 2000/98.
        • Good thing FireFox 2.0 is coming out soon...

          Doesn't matter at all since the rendering (HTML/CSS) engine is exactly the same as Firefox 1.5'.

      • by jonwil ( 467024 )
        Windows 2000 I can understand but anyone still using Windows XP without SP2 is stupid IMO...
        • Re:PNG Support (Score:4, Informative)

          by giorgiofr ( 887762 ) on Monday October 23, 2006 @01:23PM (#16548646)
          SP2 breaks lots of stuff. Besides, on my PC at work I don't go around installing system upgrades... If anything breaks it's my fault for not asking the appropriate department to do it.
          • Re: (Score:3, Informative)

            by wolrahnaes ( 632574 )
            SP2 breaks nothing. Already broken systems (malware typically) fail under SP2 because of the aforementioned breaks not being compatible with new fixes in SP2.
          • Re: (Score:3, Informative)

            SP2 breaks lots of stuff.

            So I heard, and it kept me from installing it for a good few weeks until I was reasonably confident I knew what the potential dangers were. In practice, when I did install it, it caused me absolutely no problems at all.

            There were a handful of major applications that did have problem reports linked to SP2 for a while. However, the developers were generally quick to fix these, and I haven't heard of an SP2-related problem report for any legitimate software other than system tool

      • Re:PNG Support (Score:5, Interesting)

        by Midnight Thunder ( 17205 ) on Monday October 23, 2006 @12:55PM (#16548244) Homepage Journal
        There is actually a work around for IE's lack of transparency support in PNGs. It depends on some clever tricks with CSS and the fact that IE 6's CSS is broken. The only catch is that it is limited to images defined in divs.

        /* IE versions prior to 7.0 do not support transparency, so the following is a workaround
              taken from: tem_id=217 []

        #site_header_name {
                height: 100px;
                width: 702px; /* Mozilla ignores crazy MS image filters, so it will skip the following */
                filter:progid:DXImageTransform.Microsoft.AlphaImag eLoader(enabled=true, sizingMethod=scale src='../images/name.png');
        } /* IE ignores styles with [attributes], so it will skip the following. */ .site_header_name[class] {
        • Re: (Score:2, Insightful)

          by Anonymous Coward

          Lame approach to the solution. It invalidates the style sheet. It requires to copy-paste nearly the same code for each image. It requires you to write the dimensions manually for each image. It does not work for embedded images (<img src... /> ).

          Be virtuously lazy and reuse the IE7 library [] instead. (Not related to the topical web browser.)

      • Re: (Score:3, Interesting)

        by jonadab ( 583620 )
        > You'll still have to cater for IE6 or a loong time

        I'm not planning on it. Once IE7 hits the automatic updates for fully-patched-up users, I'm giving it a month or two and then dropping IE6 support. I'm not going to deliberately *break* IE6, but I'm not going to cater to it either. Win98 users can get Firefox or Opera, and people who refuse to install service packs can go lick a sidewalk.

        I already broke down and started using PNG transparency a year or so ago, and IE6 users can just *see* a funny bac
    • Prior to IE7 there were two major things wrong with the PNG support. One was the alpha channel opacity, which thankfully is now working. The other is the gamma handling which is still wrong. See []. Other browsers match the gamma=1/2.2 patches with GIF, JPEG and other unlabeled material, while IE matches them with gamma=1/1.96. This defeats any effort to match colors in a PNG with other items on a web page.
  • CSS Opacity (Score:2, Informative)

    by Ark42 ( 522144 )
    It's too bad they couldn't be bothered to add support for CSS opacity then. All the other major browsers have supported that forever, and using filter:alpha(opacity) is getting stupid.
    Also the <input type="button"> still renders with tons of extra padding you can't get rid of, even with padding: 0px; so buttons still show up super large in IE compared to all the other browsers.
    • by Anonymous Coward on Monday October 23, 2006 @11:34AM (#16547038)
      You said almost precisely this comment the day IE 7 came out. I remember laughing at your crying.
    • I hope they fixed the fact that you can't get anything (like a floating div) to show up on top of a <Select> no matter what you set the z-index as. I'm pretty sure that I heard they fixed it, yet I haven't gotten around to trying it yet.
      • Re: (Score:3, Informative)

        by Intron ( 870560 )
        "Select control: CSS style-able and not always on top"

        Looks like they think it's fixed.
        • Thank god. I had a rendering bug for a website in IE because of that, and it took like half an hour to explain to my boss that it's a bug in IE and there was really nothing I could do about it.
          Okay, if I tried really hard I might have been able to found a workaround, but as I told him "I'm sorry, I can't fix IE."
      • by uradu ( 10768 )
        As can be read on MSDN []:

        "From Internet Explorer 5 to Internet Explorer 6, This element is a windowed control and does not support the z-index attribute or zIndex property.

        As of Internet Explorer 7 or later, this element is windowless and supports the z-index attribute and the zIndex property. The SELECT element does not require a strict doctype to enable windowless functionality."
    • You could also code your page to use text-links for input. Give them a class-name, then in the CSS: .buttonlink {background-image: static.img;} .buttonlink:hover {background-image: url(hover.img);} If you want to scale the image for each "button", simply create a 1px-wide gradient image to match the system style, and apply an x-repeat in the CSS. Of course, until border-radius is implemented, this would result in a square-cornered button. However, it should suffice if all you want is to have your inputs
  • by TrappedByMyself ( 861094 ) on Monday October 23, 2006 @11:32AM (#16547024)
    They still continue to work hard to implement the CSS2 spec which came out 8 and a half years ago.
    I'm excited to see if they can implement CSS3 in time for my retirement in 30 years.

    Keep your node to the grindstone kids, I know you'll get there!
  • by krell ( 896769 ) on Monday October 23, 2006 @11:32AM (#16547028) Journal
    "In addition, there is a long list of fixed bugs that plagued previous IE browsers for years"

    It's be nice if Microsoft provided a list of every single unfixed bug in IE7 as well.
  • by Zaiff Urgulbunger ( 591514 ) on Monday October 23, 2006 @11:50AM (#16547240)
    Hi all,

    IE7 isn't ready yet; it needs more testing!

    For example, create a super basic html page. Within the <body> insert a single <p>aragraph, and within that paragraph, insert a(<a href="#">) link (</a>) - insert it somewhere after the start of the paragraph and before the end. E.g.

    <p>This is a <a href="#foo">test link</a> for checking IE7 links</p>

    Okay, view the page. It looks fine. Now Zoom 125%. The underscore below the link is rendered funny, and even better, if you move the mouse over the link, you'll find the mouse :hover events START BEFORE where the link is rendered and END BEFORE the rendered link ends.

    *I believe* if the link has a background colour, then this background is rendered in the wrong place also.

    Quite honestly I don't know how MS could've missed this... but there again....
    • by gc8005 ( 733938 ) on Monday October 23, 2006 @11:58AM (#16547338)
      Installed IE7, found two problems within 10 minutes.

      Does not work with SalesForce. Buttons do not render. They'll appear as a thin line without text.

      IE7 does not work with our SharePoint / WSS v3 Beta (with R2 patch applied). Excel views crash. Works fine with IE6 and Firefox.

      IE7, IMHO, is not ready for prime time. Even uninstalling is somewhat hidden. Hint: Control Panel, Add/Remove software, show Windows Updates, then find IE7, remove.

      • IE7, IMHO, is not ready for prime time. Even uninstalling is somewhat hidden. Hint: Control Panel, Add/Remove software, show Windows Updates, then find IE7, remove.
        I didn't have that problem myself; it was just in Control Panel...Add/Remove software and was listed as "Internet Explorer" I think. That's on a XP Home install and I had previously installed IE7 betas, which I had uninstalled prior to installing a new version.

        So even the installer has intermittent bugs?

        Re all the other issues, yeah there's
    • by adolf ( 21054 )
      Page zooming is horribly broken in every browser I've used, except for Opera, which manages to get it right most of the time.

      But, see, it has always been broken.

      That it is still broken is really not a problem new to IE 7.

      And it's really not a surprise that they didn't catch this variation of brokenness, because this stuff has been so broken for so many years in so many browsers that one could only reasonably be lead to conclude that developers in general have nothing but disdain for the Zoom function.
  • List of changes (Score:3, Informative)

    by Rik Sweeney ( 471717 ) on Monday October 23, 2006 @11:52AM (#16547254) Homepage
    FTA: We also extended our existing implementations to comply with W3C specifications:

    Left arm starts tingling
  • by Jugalator ( 259273 ) on Monday October 23, 2006 @12:01PM (#16547376) Journal
    Using the QuirksMode CSS compatibility chart [], some lacking features in IE 7 compared to the competition are:
    • display: table
    • :before and :after
    • :active
    • :focus (IE 5.2 for Mac actually still does a better job)
    • outline (IE 5.2 for Mac has full support)
    • Tables: border-spacing
    • Tables: border-collapse
    • Tables: caption-side
    • Tables: empty-cells

    Only listing shortcomings where support is present in all or nearly all of Firefox, Opera, Safari; the majority of its competition.

    But it's still a huge improvement over IE 6 standards-wise, and I think Microsoft did a pretty good job taking their ancient IE 6 code and doing something decent out of it. IE 7 adds support for all CSS selectors, and even handles the + selector better than Firefox, applying styles correctly in dynamic updates [].

    Maybe with IE 8 they will be even more competitive with the browsers of today, standards-wise.
    • by Dorceon ( 928997 )
      Maybe with IE 8 they will be even more competitive with the browsers of today, standards-wise.
      But not, of course, with the browsers of the day IE8 is released.
    • by Ant P. ( 974313 )
      In MS's defence (crazy, I know...) they do have "display:inline-block", which IMO is a lot more useful than CSS for making table layouts.
  • by iONiUM ( 530420 ) on Monday October 23, 2006 @12:07PM (#16547490) Journal
    I'm surprised nobody has noticed this yet. If you load any page which contains frames, where the frames contain a large amount of HTML (or just text for that matter), the CPU will spike to 100% for some period of time that is related to the amount of HTML within the frame. I've tested this numerous times and it's a huge problem. IE6 does not show this issue at all. Go ahead, try it out. What's really interesting is while it's at 100% CPU usage, it will yield the CPU to other processes (if another process requires some CPU), but not to itself.

    I hope they fix it, but something tells me they won't until I drum up some angry mobs.
    • by hsmith ( 818216 )
      Are you using the PNG hack to get PNG transparency? I experienced this issue using DHTML and rendering lots of images. It killed the CPU, so I had to write a clause to not render the hack for IE7
  • On other news... (Score:5, Informative)

    by Yuioup ( 452151 ) on Monday October 23, 2006 @12:11PM (#16547544)
    ... Firefox 2.0 is available on Mozilla's FTP.

    (I'm using it right now). x/releases/2.0/ []

  • It also looks like they fixed a problem in IE6 where a select/combo control in the background shows through a div with a greater z-index (i.e. the div should be in front and the combo hidden behind, but the combo was peaking through). I use javascript to change a div's CSS properties to make it into a "popup" by manipulating the position and display properties when certain events were triggered. It didn't work right in IE6 if there was a select element underneath, because the select always showed through.
  • by victorvodka ( 597971 ) on Monday October 23, 2006 @12:15PM (#16547610) Homepage
    How about the fact that you can't change ids on the fly? Or that referring to an object by ID returns one whose name is the ID you're looking for? These two bugs alone are responsible for the loss of two days of my life. Will Microsoft be giving those back to me with this release (which I can't install because I run a pirated copy of XP).
    • Re: (Score:3, Funny)

      by Z34107 ( 925136 )

      These two bugs alone are responsible for the loss of two days of my life. Will Microsoft be giving those back to me with this release (which I can't install because I run a pirated copy of XP).

      They'll give you those days back when you give them their $90. ^.^

    • by toriver ( 11308 )
      How about the fact that you can't change ids on the fly?

      What? Next you'll want database vendors to allow you to change primary keys - which is what ids sorta are. Use name for "business keys".
  • XSLT (Score:3, Interesting)

    by slummy ( 887268 ) <> on Monday October 23, 2006 @12:28PM (#16547842) Homepage
    IE7 XSL Transformations are still the same. Writing an XSL stylesheet that transforms the same both in IE and Mozilla is a bit of a paradox. I've figured out ugly workarounds but am still in awe at the level of difficulty when trying to maintain cross-browser compatibility. One thing that I'm wondering about is how IE7 handles a malformed XML document. IE6 has no problem using a document that is not well-formed, whereas Mozilla will complain thoroughly. I guess we'll have to put that to the test.
    • Re: (Score:3, Insightful)

      by Chatterton ( 228704 )
      One thing that I'm wondering about is how IE7 handles a malformed XML document.

      The question is: If having an XSL transformation working the same in the 2 browsers is difficult, why adding more complexity with malformed XML documents ? Only a broken implementation of an XML parser will support mal-formed XML documents...
      It is my point of view. I am an XML wellformedness nazi from the simple fact that XML if for interchange of data. If you are lazy at the way you wrote/generate your XML files, the recipie
    • Just to agree to Chatterton's post, if you have documents that are not well formed, then you're operating outside of any spec. and therefore can't expect anything to work!

      FWIW I've never had any problems with XSLT working in both IE and Firefox; there are differences, but nothing that would make me say one is better than the other.... and furthermore, since I've slagged-off MS in other posts, I should say that I've always found MSXML to be very solid, and fast.

      If you want XSLT incompatility (?!), then t
  • Acid 2 Test (Score:4, Funny)

    by kid_icarus75 ( 579846 ) on Monday October 23, 2006 @12:31PM (#16547880)
    Have you seen the new IE 7 acid 2 test results? top [] They made it even better than the old IE. Now there is stuff that moves when you mouse over it and some random scrollbars too! Kudos to microsoft for creativity!
  • Does anyone know whether IE7 finally supports the application/xhtml+xml MIME type? That would mean we can finally start serving XHTML pages the way they're supposed to get served, with no stupid browser detection. (I know, I know, IE6 will be around for the next six decades or so...)
    • Re: (Score:3, Informative)

      by Anonymous Coward
      No, it doesn't.
  • *Yawn* (Score:3, Informative)

    by Dracos ( 107777 ) on Monday October 23, 2006 @01:25PM (#16548682)

    IE7's CSS (and other standards) support hasn't changed since RC1. They've said this.

    For a complete report on IE7's support, see []. For those thjo lazy (or embarrassed) to click the link, here's a summary of CSS 2.1 support:

    • Firefox: 100%
    • Opera 9: 86%
    • IE6: 43%
    • IE7: 43%

    In the grand scheme of things, what they did to improve IE7's CSS support is statistically insignificant. They basically took all the IE7 bug pages on the net and cherry picked what they felt like fixing.

    Make no mistake: IE7 is little more than a marketing effort attempting to stave off the rise of other demonstrably better browsers. The few fixes they did put in are going to cause even more problems for developers who decide to support it (I'm not) because of how, which, and in what context the bugs are fixed.

    • Re:*Yawn* (Score:5, Interesting)

      by Kjella ( 173770 ) on Monday October 23, 2006 @02:18PM (#16549444) Homepage
      You're quoting CSS 2.1 Conformance only. The full list of compliance tests (IE6,IE7,FF1.5,Opera 9, impossible to align well):
      CSS 2.1 Units 96% 96% Y 97%
      CSS 2.1 Importance I I Y Y
      CSS 2.1 At-rules 21% 21% 43% Y
      CSS 2.1 Basic selectors 23% 64% 86% 77%
      CSS 2.1 Pseudo-classes 29% 36% 93% 93%
      CSS 2.1 Pseudo-elements 25% 25% 63% 63%
      CSS 2.1 Basic properties 55% 58% 97% 97%
      CSS 2.1 Print properties 38% 38% 42% 92%
      CSS 2.1 Conformance 43% 43% Y 86%

      When you look at the grand total at the bottom here [] you get:

      CSS 2.1 support:
      IE 6: 51%
      IE 7: 57%
      Firefox 1.5: 91%
      Opera 9: 94%

      So, this shows that
      a) IE7 is an improvement over IE6 (though admittingly not impressive)
      b) Firefox isn't perfect, like you'd be mislead to believe
      c) Opera is actually the most standards-compliant browser

      But hey, there's lies, damn lies and statistics, but noone would ever use that to try to make closed-source appear worse than it is, and open source better than it is would they?
    • by BZ ( 40346 )
      > # Firefox: 100%

      You must be looking at just the last line of the table. Look at the table itself -- there's stuff there that Firefox doesn't support.

      Sorry, but claiming that Firefox has 100% CSS2.1 support is just bullshit. And I should know, since I work on said CSS support in Firefox... ;)
  • Should we start preparing for a new generation of IE-only sites? Lord, I hope not.
  • It's all fine if your HTML is spewed from a GUI editor, assuming the extra bytes don't bother you.

    Hand editing is another matter. Back in the old days, none of this nonsense was needed. You always got the best the browser had to offer. If you were neat and tidy about things, you'd add the <html>, <head>, <title>, and <body> markers. If you didn't feel pedantic, you just jumped right in. Starting off with "Hello this is my web page!" was just fine. Closing a <p> tag was unhea

  • Has it managed to be HTTP/1.0 compliant yet? For example, if I feed IE a .iso disk iamge file served with Content-Type: text/plain, will it render it as plain text in the browser window or offer to save it to disk? The correct response is to render it as text.

    I'm sick of having to launch IE to download a special Linux boot CD because the person hosting it is too lazy to configure their server to serve it with the right Content-Type.
    • I'm sick of having to launch IE to download a special Linux boot CD because the person hosting it is too lazy to configure their server to serve it with the right Content-Type.

      So don't. Right-click on the link and choose "Save Link As...". Or right-click on the ISO-as-text and choose "Save Page As...". Or use wget on the command line. No reason to resort to IE and take advantage of its broken, standards-violating content-type sniffing.

      And for the converse case, when someone configures their server to se

  • I have been waiting to use :hover on arbitrary elements since I first got into web design with CSS. It's hard to appreciate for a person who has no or only very little CSS experience, but full support of :hover makes semi-advanced things easy. For example, a list item can be made to change backgrounds when it is hovered over. It's amazing how handy that is.

Never buy from a rich salesman. -- Goldenstern