- The inspector can be started by adding a script to your page or running a bookmarklet. Weinre is a debugger for web pages, like FireBug (for FireFox) and Web Inspector (for WebKit-based browsers), except it's designed to work remotely, and in particular, to allow you debug web pages on a mobile device such as a phone.
- I just upgraded my iPhone 5c to iOS 8 and now my Mavericks (10.9.4) Safari Web Inspector (7.0.6) no longer connects to the Mobile Safari. Weirdly enough when I save the web site to my home screen it works (navigator.standalone = true), but not if the web site runs in the regular Mobile Safari browser.
Mobile Safari Inspector changes that. It's a bare-bones iOS web browser that uses private iOS 5 APIs to let you use the desktop Webkit Inspector to inspect a UIWebView running in the iOS Simulator. Since it uses private APIs, Mobile Safari Inspector can't be submitted to Apple for release on the App Store.
/*Customise Safari Web Inspector font*/ |
/*(tested on Safari 7.0.1 on OS X Mavericks)*/ |
/*NO WARRANTY IMPLIED - Will work until Safari is updated requiring a re-patch*/ |
/*INSTRUCTIONS*/ |
1. QuitSafari |
2. InFindergotothefollowingfolder: /System/Library/PrivateFrameworks |
3. CopythefollowingframeworktoyourDesktop: WebInspectorUI.framework |
4. Renametheoriginalframeworktoavoidoverwriting-Iappend .origtothefilename-authenticateifnecessary |
5. OpenTerminalandenterthefollowingcommand: chmod 777 ~/Desktop/WebInspectorUI.framework/Versions/A/Resources/Main.css |
6. EnterthefollowingcommandtoopenMain.cssinsidetheframeworkinyourdefaulttexteditor: |
sudoopen-t~/Desktop/WebInspectorUI.framework/Versions/A/Resources/Main.css |
(authenticate) |
7. Findthe .cm-s-default,.syntax-highlightedproperty-hereyoucanchangevariousvalues: e.g. |
.cm-s-default,.syntax-highlighted{color:#000;font-family:'Espresso Mono',Menlo,monospace;font-size:12px;} |
herewecanseethefont-familyandfont-sizehavebeenchanged |
8. Ifyouchangethefont-sizeyouwillwanttokeeptheDOMtreearrowswhichtogglesourcenodesinline: |
Findthe .dom-tree-outlineli.parent::beforeproperty-changethemargin-topvalue: e.g. |
.dom-tree-outlineli.parent::before{float:left;content:'; |
background-image:-webkit-canvas(disclosure-triangle-tiny-closed-normal); |
background-size:8px8px;background-repeat:no-repeat;width:8px;height:8px;margin-top:4px;padding-right:2px;} |
9. Savethechanges |
10. CopytheframeworkfolderfromyourDesktopbacktotheSystemfolderinstep 2. |
11. LaunchSafariandcheckifyourchangeshavebeensuccessful. |
12. Repeatsteps 8-11 untilyougettheDOMnodearrowsliningupwiththecode! |
TorestoredefaultsyoucansimplyQuitSafari,deletethemodifiedframeworkandrenametheoriginal. |
commented Feb 28, 2015
commented Jul 29, 2015
Thanks, but no one should ever have to do this. I can't believe it's this terrible to simply increase font size. |
commented May 8, 2016
@chrisphenry: Thank you for this process. I have searched all over the Internet, and this is the only good solution I found. Procedure for Safari 9 on El CapitanHowever, I needed to update Safari 9.1 (11601.5.17.1) on OSX 10.11.4. So I had to make a couple of minor adjustments to your process. |
Safari Technology Preview Release 121 is now available for download for macOS Big Sur and macOS Catalina. If you already have Safari Technology Preview installed, you can update in the Software Update pane of System Preferences on macOS.
This release covers WebKit revisions 271794-272845.
Web Inspector
- Sources
- Collapsed blackboxed call frames in the Call Stack section (r272371)
CSS
/*Customise Safari Web Inspector font*/ |
/*(tested on Safari 7.0.1 on OS X Mavericks)*/ |
/*NO WARRANTY IMPLIED - Will work until Safari is updated requiring a re-patch*/ |
/*INSTRUCTIONS*/ |
1. QuitSafari |
2. InFindergotothefollowingfolder: /System/Library/PrivateFrameworks |
3. CopythefollowingframeworktoyourDesktop: WebInspectorUI.framework |
4. Renametheoriginalframeworktoavoidoverwriting-Iappend .origtothefilename-authenticateifnecessary |
5. OpenTerminalandenterthefollowingcommand: chmod 777 ~/Desktop/WebInspectorUI.framework/Versions/A/Resources/Main.css |
6. EnterthefollowingcommandtoopenMain.cssinsidetheframeworkinyourdefaulttexteditor: |
sudoopen-t~/Desktop/WebInspectorUI.framework/Versions/A/Resources/Main.css |
(authenticate) |
7. Findthe .cm-s-default,.syntax-highlightedproperty-hereyoucanchangevariousvalues: e.g. |
.cm-s-default,.syntax-highlighted{color:#000;font-family:'Espresso Mono',Menlo,monospace;font-size:12px;} |
herewecanseethefont-familyandfont-sizehavebeenchanged |
8. Ifyouchangethefont-sizeyouwillwanttokeeptheDOMtreearrowswhichtogglesourcenodesinline: |
Findthe .dom-tree-outlineli.parent::beforeproperty-changethemargin-topvalue: e.g. |
.dom-tree-outlineli.parent::before{float:left;content:'; |
background-image:-webkit-canvas(disclosure-triangle-tiny-closed-normal); |
background-size:8px8px;background-repeat:no-repeat;width:8px;height:8px;margin-top:4px;padding-right:2px;} |
9. Savethechanges |
10. CopytheframeworkfolderfromyourDesktopbacktotheSystemfolderinstep 2. |
11. LaunchSafariandcheckifyourchangeshavebeensuccessful. |
12. Repeatsteps 8-11 untilyougettheDOMnodearrowsliningupwiththecode! |
TorestoredefaultsyoucansimplyQuitSafari,deletethemodifiedframeworkandrenametheoriginal. |
commented Feb 28, 2015
commented Jul 29, 2015
Thanks, but no one should ever have to do this. I can't believe it's this terrible to simply increase font size. |
commented May 8, 2016
@chrisphenry: Thank you for this process. I have searched all over the Internet, and this is the only good solution I found. Procedure for Safari 9 on El CapitanHowever, I needed to update Safari 9.1 (11601.5.17.1) on OSX 10.11.4. So I had to make a couple of minor adjustments to your process. |
Safari Technology Preview Release 121 is now available for download for macOS Big Sur and macOS Catalina. If you already have Safari Technology Preview installed, you can update in the Software Update pane of System Preferences on macOS.
This release covers WebKit revisions 271794-272845.
Web Inspector
- Sources
- Collapsed blackboxed call frames in the Call Stack section (r272371)
CSS
- Added support for
aspect-ratio
on grid items (r272307) - Added support for logical variants of
scroll-padding
andscroll-margin
(r272035) - Added support for
color(a98-rgb ...)
,color(prophoto-rgb ...)
,color(rec2020 ...)
,color(xyz ...)
,hwb()
as part of CSS Color 4 (r271992, r272125, r272123, r272311, r272344) - Added support for percentages when parsing
color(srgb ...)
andcolor(display-p3 ...)
per-spec (r271866) - Changed
sRGB
toXYZ
conversion matrix values to match values in the latest spec (r272498) - Fixed
max-height
percentages that are wrongly resolved for replaced grid items (r272309) - Fixed grid item to fill the grid area for
stretch
ornormal
self alignment (r272308) - Fixed animation of
rotate
orscale
property to correctly account for statictranslate
property (r272201) - Fixed
font-stretch
to apply tosystem-ui
(r272073) - Fixed the nested grid container which has a replaced item with
max-height
incorrectly gettingwidth(0px)
(r272338, r272711) - Implemented
scroll-snap-stop
for scroll snapping (r272610) - Handled
aspect-ratio: auto m/n
for replaced elements (r272360) - Handled
min-width: auto
ormin-height: auto
foraspect-ratio
(r272718) - Handled zero
aspect-ratio
width or height (r271948) - Made
auto &&
use contentbox-sizing
(r272569)
GPU Process
- Enabled audio capture in GPUProcess by default (r272735)
- Enabled audio capture for speech recognition in GPUProcess (r272434)
- Enabled GPU WebRTC codecs in GPUProcess by default on macOS (r272496)
- Enabled video capture in GPUProcess by default on macOS (r272810)
- Fixed
not loading when the URL ends with
.php
causing some tests to time out (r272750) - Fixed implementation of WebGL power preference and discrete/internal GPU selection with ANGLE (r271880)
Media
- Added intermediate volume icon states between 'mute' and 'max' (r272375)
- Changed media controls to show the total duration, only switching to time remaining when clicked (r272373)
- Changed MediaStream-backed video elements to not compute the mediaType based on track muted states (r272583)
- Connected MediaSession with MediaRemote and NowPlaying (r272445, r272589)
- Fixed sound on YouTube after switching back to foreground (r272829)
- Fixed playback of WebM/Opus generated from Chrome MediaRecorder (r272822)
- Fixed Picture-in-Picture video pauses when scrolling on Twitter (r271870)
- Updated media controls time scrubber styles (r272352, r272438)
- Updated media controls to use new SF Symbols (r272339)
Ipad Safari Web Inspector
Web API
- Fixed the return key binding for date inputs conflicting with pressing return to submit a form (r272495
- Fixed selecting a date on
datetime-local
inputs unexpectedly adding second and millisecond fields (r272368) - Fixed rendering a pattern with an SVG image (r272549)
- Forbid '|' in URL hosts (r271899)
- Reduced the overhead of HTMLDocumentParser in
innerHTML
setter (r272622)
JavaScript
- Added
@
inError#stack
even if function name does not exist (r272139) - Added
Atomics
support forBigInt64Array
andBigUint64Array
behind a runtime flag (JSC_useSharedArrayBuffer=1
) (r272341) - Adjusted properties order of host JS functions (r272099)
- Changed
Object.assign
to throw for property creation on non-extensibletarget
(r272411) - Handled milliseconds in Date's timezone without floating point rounding (r272127)
- Implemented
BigInt64Array
andBigUint64Array
(r272170, r272215) - Implemented private methods behind flag (
JSC_usePrivateMethods=1
)(r272580) - Made
JSON.parse
faster by using table for fast string parsing (r272570)
WebAssembly
- Implemented
WebAssembly.instantiateStreaming
andWebAssembly.compileStreaming
(r271993) - Implemented streaming compilation/instantiation for the Blob type (r272221)
- Updated
WebAssembly.Global
to supportFuncref
andExternref
(r272071, r272081, r272119) - Enabled Wasm bulk-memory and reference-types (r272074)
Accessibility
- Exposed focusable elements even if the element or ancestor has
aria-hidden=true
(r272390) - Fixed long narrow tables to not be made into data tables unnecessarily (r272024)
Safari Web Inspector Mac
Speech Recognition
Safari Web Inspector Download
- Used the user media permission prompt for Speech Recognition (r272165)